home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.003 / xemacs-1 / lib / xemacs-19.13 / i486-unknown-linuxaout1.3.21 / DOC-19.13-XEmacs < prev    next >
Encoding:
Text File  |  1995-09-01  |  895.6 KB  |  20,757 lines

  1. Fvalid-device-class-p
  2. Given a DEVICE-CLASS, return t if it is valid.
  3. Valid classes are 'color, 'grayscale, and 'mono.
  4.  
  5. arguments: (DEVICE-CLASS)
  6. Fvalid-device-type-p
  7. Given a DEVICE-TYPE, return t if it is valid.
  8. Valid types are 'x, 'tty, and 'stream.
  9.  
  10. arguments: (DEVICE-TYPE)
  11. Fdevice-class-list
  12. Return a list of valid device classes.
  13.  
  14. arguments: ()
  15. Fdevice-type-list
  16. Return a list of valid device types.
  17.  
  18. arguments: ()
  19. Fdfw-device
  20. Given a device, frame, or window, return the associated device.
  21. Return nil otherwise.
  22.  
  23. arguments: (OBJ)
  24. Fselected-device
  25. Return the device which is currently active.
  26.  
  27. arguments: ()
  28. Fselect-device
  29. Select the device DEVICE.
  30. Subsequent editing commands apply to its selected frame and selected window.
  31. The selection of DEVICE lasts until the next time the user does
  32. something to select a different device, or until the next time this
  33. function is called.
  34.  
  35. arguments: (DEVICE)
  36. Fdevicep
  37. Return non-nil if OBJECT is a device.
  38.  
  39. arguments: (OBJECT)
  40. Fdevice-live-p
  41. Return non-nil if OBJECT is a device that has not been deleted.
  42.  
  43. arguments: (OBJECT)
  44. Fdevice-type
  45. Return the type of the specified device (e.g. `x' or `tty').
  46. Value is `tty' for a tty device (a character-only terminal),
  47. `x' for a device which is a connection to an X server,
  48. `stream' for a stream device (which acts like a stdio stream), and
  49. `dead' for a deleted device.
  50.  
  51. arguments: (&optional DEVICE)
  52. Fdevice-name
  53. Return the name of the specified device.
  54.  
  55. arguments: (&optional DEVICE)
  56. Fmake-device
  57. Create a new device of type TYPE.
  58. PARAMS, if specified, should be an alist of parameters controlling
  59. device creation.
  60.  
  61. arguments: (TYPE &optional PARAMS)
  62. Fdelete-device
  63. Delete DEVICE, permanently eliminating it from use.
  64.  
  65. arguments: (DEVICE)
  66. Fdevice-list
  67. Return a list of all devices.
  68.  
  69. arguments: ()
  70. Fdevice-frame-list
  71. Return a list of all frames on DEVICE.
  72. If DEVICE is nil, the selected device will be used.
  73.  
  74. arguments: (&optional DEVICE)
  75. Fdevice-class
  76. Return the class (color behavior) of DEVICE.
  77. This will be one of 'color, 'grayscale, or 'mono.
  78.  
  79. arguments: (&optional DEVICE)
  80. Fdevice-pixel-width
  81. Return the width in pixels of DEVICE, or nil if unknown.
  82.  
  83. arguments: (&optional DEVICE)
  84. Fdevice-pixel-height
  85. Return the height in pixels of DEVICE, or nil if unknown.
  86.  
  87. arguments: (&optional DEVICE)
  88. Fdevice-mm-width
  89. Return the width in millimeters of DEVICE, or nil if unknown.
  90.  
  91. arguments: (&optional DEVICE)
  92. Fdevice-mm-height
  93. Return the height in millimeters of DEVICE, or nil if unknown.
  94.  
  95. arguments: (&optional DEVICE)
  96. Fdevice-bitplanes
  97. Return the number of bitplanes of DEVICE, or nil if unknown.
  98.  
  99. arguments: (&optional DEVICE)
  100. Fdevice-color-cells
  101. Return the number of color cells of DEVICE, or nil if unknown.
  102.  
  103. arguments: (&optional DEVICE)
  104. Fset-device-baud-rate
  105. Set the output baud rate of DEVICE to RATE.
  106. On most systems, changing this value will affect the amount of padding
  107. and other strategic decisions made during redisplay.
  108.  
  109. arguments: (DEVICE RATE)
  110. Fdevice-baud-rate
  111. Return the output baud rate of DEVICE.
  112.  
  113. arguments: (&optional DEVICE)
  114. Fdevice-enable-input
  115. Enable input on device DEVICE.
  116.  
  117. arguments: (DEVICE)
  118. Fdevice-disable-input
  119. Disable input on device DEVICE.
  120.  
  121. arguments: (DEVICE)
  122. Fdevice-function-key-map
  123. Return the function key mapping for DEVICE.
  124.  
  125. arguments: (&optional DEVICE)
  126. Fset-device-function-key-map
  127. Set the function key mapping for DEVICE to KEYMAP.
  128.  
  129. arguments: (DEVICE KEYMAP)
  130. Vcreate-device-hook
  131. Function or functions to call when a device is created.
  132. One argument, the newly-created device.
  133. Note that the device will not be selected and will not have any
  134. frames on it.Vdelete-device-hook
  135. Function or functions to call when a device is deleted.
  136. One argument, the to-be-deleted device.Fx-debug-mode
  137. With a true arg, make the connection to the X server synchronous.
  138. With false, make it asynchronous.  Synchronous connections are much slower,
  139. but are useful for debugging. (If you get X errors, make the connection
  140. synchronous, and use a debugger to set a breakpoint on `x_error_handler'.
  141. Your backtrace of the C stack will now be useful.  In asynchronous mode,
  142. the stack above `x_error_handler' isn't helpful because of buffering.)
  143. If DEVICE is not specified, the selected device is assumed.
  144.  
  145. Calling this function is the same as calling the C function `XSynchronize',
  146. or starting the program with the `-sync' command line argument.
  147.  
  148. arguments: (ARG &optional DEVICE)
  149. Fx-get-resource
  150. Retrieve an X resource from the resource manager.
  151.  
  152. The first arg is the name of the resource to retrieve, such as "font".
  153. The second arg is the class of the resource to retrieve, like "Font".
  154. The third arg should be one of the symbols 'string, 'integer, 'natnum, or
  155.   'boolean, specifying the type of object that the database is searched for.
  156. The fourth arg is the locale to search for the resources on, and can
  157.   currently be a a buffer, a frame, a device, or 'global.  If omitted, it
  158.   defaults to 'global.
  159. The fifth arg is the device to search for the resources on. (The resource
  160.   database for a particular device is constructed by combining non-device-
  161.   specific resources such any command-line resources specified and any
  162.   app-defaults files found [or the fallback resources supplied by XEmacs,
  163.   if no app-defaults file is found] with device-specific resources such as
  164.   those supplied using xrdb.) If omitted, it defaults to the device of
  165.   LOCALE, if a device can be derived (i.e. if LOCALE is a frame or device),
  166.   and otherwise defaults to the value of `default-x-device'.
  167. The sixth arg NOERROR, if non-nil, means do not signal an error if a
  168.   bogus resource specification was retrieved (e.g. if a non-integer was
  169.   given when an integer was requested).  In this case, a warning is issued
  170.   instead.
  171.  
  172. The resource names passed to this function are looked up relative to the
  173. locale.
  174.  
  175. If you want to search for a subresource, you just need to specify the
  176. resource levels in NAME and CLASS.  For example, NAME could be
  177. "modeline.attributeFont", and CLASS "Face.AttributeFont".
  178.  
  179. Specifically,
  180.  
  181. 1) If LOCALE is a buffer, a call
  182.  
  183.     (x-get-resource "foreground" "Foreground" 'string SOME-BUFFER)
  184.  
  185. is an interface to a C call something like
  186.  
  187.     XrmGetResource (db, "xemacs.buffer.BUFFER-NAME.foreground",
  188.             "Emacs.EmacsLocaleType.EmacsBuffer.Foreground",
  189.             "String");
  190.  
  191. 2) If LOCALE is a frame, a call
  192.  
  193.     (x-get-resource "foreground" "Foreground" 'string SOME-FRAME)
  194.  
  195. is an interface to a C call something like
  196.  
  197.     XrmGetResource (db, "xemacs.frame.FRAME-NAME.foreground",
  198.             "Emacs.EmacsLocaleType.EmacsFrame.Foreground",
  199.             "String");
  200.  
  201. 3) If LOCALE is a device, a call
  202.  
  203.     (x-get-resource "foreground" "Foreground" 'string SOME-DEVICE)
  204.  
  205. is an interface to a C call something like
  206.  
  207.     XrmGetResource (db, "xemacs.device.DEVICE-NAME.foreground",
  208.             "Emacs.EmacsLocaleType.EmacsDevice.Foreground",
  209.             "String");
  210.  
  211. 4) If LOCALE is 'global, a call
  212.  
  213.     (x-get-resource "foreground" "Foreground" 'string 'global)
  214.  
  215. is an interface to a C call something like
  216.  
  217.     XrmGetResource (db, "xemacs.foreground",
  218.             "Emacs.Foreground",
  219.             "String");
  220.  
  221. Note that for 'global, no prefix is added other than that of the
  222. application itself; thus, you can use this locale to retrieve
  223. arbitrary application resources, if you really want to.
  224.  
  225. The returned value of this function is nil if the queried resource is not
  226. found.  If the third arg is `string', a string is returned, and if it is
  227. `integer', an integer is returned.  If the third arg is `boolean', then the
  228. returned value is the list (t) for true, (nil) for false, and is nil to
  229. mean ``unspecified.''
  230.  
  231. arguments: (NAME CLASS TYPE &optional LOCALE DEVICE NO-ERROR)
  232. Fx-get-resource-prefix
  233. Return the resource prefix for LOCALE on DEVICE.
  234. The resource prefix is the strings used to prefix resources if
  235. the LOCALE and DEVICE arguments were passed to `x-get-resource'.
  236. The returned value is a cons of a name prefix and a class prefix.
  237. For example, if LOCALE is a frame, the returned value might be
  238. ("xemacs.frame.FRAME-NAME" . "Emacs.EmacsLocaleType.EmacsFrame").
  239. If no valid X device for resourcing can be obtained, this function
  240. returns nil. (In such a case, `x-get-resource' would always return nil.)
  241.  
  242. arguments: (LOCALE &optional DEVICE)
  243. Fx-put-resource
  244. Add a resource to the resource database for DEVICE.
  245. RESOURCE-LINE specifies the resource to add and should be a
  246. standard resource specification.
  247.  
  248. arguments: (RESOURCE-LINE &optional DEVICE)
  249. Fdefault-x-device
  250. Return the default X device for resourcing.
  251. This is the first-created X device that still exists.
  252.  
  253. arguments: ()
  254. Fdevice-x-display
  255. Return the X display which DEVICE is connected to, as a string.
  256.  
  257. arguments: (&optional DEVICE)
  258. Fdevice-x-argv-list
  259. You should probably not be using this function.
  260.  
  261. arguments: (&optional DEVICE)
  262. Fx-display-visual-class
  263. Return the visual class of the X display `device' is on.
  264. The returned value will be one of the symbols `static-gray', `gray-scale',
  265. `static-color', `pseudo-color', `true-color', or `direct-color'.
  266.  
  267. arguments: (&optional DEVICE)
  268. Fx-server-vendor
  269. Return the vendor ID string of the X server `device' on.
  270.  
  271. arguments: (&optional DEVICE)
  272. Fx-server-version
  273. Return the version numbers of the X server `device' is on.
  274. The returned value is a list of three integers: the major and minor
  275. version numbers of the X Protocol in use, and the vendor-specific release
  276. number.  See also `x-server-vendor'.
  277.  
  278. arguments: (&optional DEVICE)
  279. Fx-valid-keysym-name-p
  280. Return true if KEYSYM names a keysym that the X library knows about.
  281. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in
  282. /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system.
  283.  
  284. arguments: (KEYSYM)
  285. Fx-grab-pointer
  286. Grab the pointer and restrict it to its current window.
  287. If optional DEVICE argument is nil, the default device will be used.
  288. If optional CURSOR argument is non-nil, change the pointer shape to that
  289.  until `x-ungrab-pointer' is called (it should be an object returned by the
  290.  `make-cursor' function).
  291. If the second optional argument IGNORE-KEYBOARD is non-nil, ignore all
  292.   keyboard  events during the grab.
  293. Returns t if the grab is successful, nil otherwise.
  294.  
  295. arguments: (&optional DEVICE CURSOR IGNORE-KEYBOARD)
  296. Fx-ungrab-pointer
  297. Release a pointer grab made with `x-grab-pointer'.
  298. If optional first arg DEVICE is nil the default device is used.
  299. If it is t the pointer will be released on all X devices.
  300.  
  301. arguments: (&optional DEVICE)
  302. Fx-grab-keyboard
  303. Grab the keyboard on the given device (defaulting to the selected one).
  304. So long as the keyboard is grabbed, all keyboard events will be delivered
  305. to emacs -- it is not possible for other X clients to eavesdrop on them.
  306. Ungrab the keyboard with `x-ungrab-keyboard' (use an unwind-protect).
  307. Returns t if the grab was successful; nil otherwise.
  308.  
  309. arguments: (&optional DEVICE)
  310. Fx-ungrab-keyboard
  311. Release a keyboard grab made with `x-grab-keyboard'.
  312.  
  313. arguments: (&optional DEVICE)
  314. Vx-emacs-application-class
  315. The X application class of the XEmacs process.
  316. This controls, among other things, the name of the `app-defaults' file
  317. that XEmacs will use.  For changes to this variable to take effect, they
  318. must be made before the connection to the X server is initialized, that is,
  319. this variable may only be changed before emacs is dumped, or by setting it
  320. in the file lisp/term/x-win.el.Fdevice-tty-tty
  321. Return the tty filename which DEVICE is connected to, as a string.
  322.  
  323. arguments: (&optional DEVICE)
  324. Fdevice-tty-terminal-type
  325. Return the terminal type of TTY device DEVICE.
  326.  
  327. arguments: (&optional DEVICE)
  328. Vdefault-tty-frame-alist
  329. Alist of default frame-creation parameters for tty frames.
  330. These are in addition to and override what is specified in
  331. `default-frame-alist', but are overridden by the arguments to the
  332. particular call to `make-frame'.Fmake-frame
  333. Create a new frame, displaying the current buffer.
  334.  
  335. Optional argument PARAMETERS is an alist of parameters for the new
  336. frame.  Specifically, PARAMETERS is a list of pairs, each having one
  337. of the following forms:
  338.  
  339.  (name . STRING)       - The frame should be named STRING.
  340.  (height . NUMBER)     - The frame should be NUMBER text lines high.
  341.  (width . NUMBER)      - The frame should be NUMBER columns wide.
  342.  
  343. The documentation for the variable `default-x-frame-alist' describes
  344. additional frame parameters that Emacs recognizes for X window frames.
  345.  
  346. arguments: (&optional PARAMETERS DEVICE)
  347. Fframep
  348. Return non-nil if OBJECT is a frame.
  349.  
  350. arguments: (OBJECT)
  351. Fframe-type
  352. Return the type of the specified frame (e.g. `x' or `tty').
  353. This is equivalent to the type of the frame's device.
  354. Value is `tty' for a tty frame (a character-only terminal),
  355. `x' for a frame that is an X window,
  356. `stream' for a stream frame (which acts like a stdio stream), and
  357. `dead' for a deleted frame.
  358.  
  359. arguments: (FRAME)
  360. Fframe-live-p
  361. Return non-nil if OBJECT is a frame which has not been deleted.
  362.  
  363. arguments: (OBJECT)
  364. Fselect-frame
  365. Select the frame FRAME.
  366. Subsequent editing commands apply to its selected window.
  367. The selection of FRAME lasts until the next time the user does
  368. something to select a different frame, or until the next time this
  369. function is called.
  370.  
  371. Note that this does not actually cause the window-system focus to
  372. be set to this frame, or the select-frame-hook or deselect-frame-hook
  373. to be run, until the next time that XEmacs is waiting for an event.
  374.  
  375. arguments: (FRAME)
  376. Fselected-frame
  377. Return the frame that is now selected on device DEVICE.
  378. If DEVICE is not specified, the selected device will be used.
  379. If no frames exist on the device, nil is returned.
  380.  
  381. arguments: (&optional DEVICE)
  382. Fframe-root-window
  383. Return the root-window of FRAME.
  384. If omitted, FRAME defaults to the currently selected frame.
  385.  
  386. arguments: (&optional FRAME)
  387. Fframe-selected-window
  388. Return the selected window of frame object FRAME.
  389. If omitted, FRAME defaults to the currently selected frame.
  390.  
  391. arguments: (&optional FRAME)
  392. Fset-frame-selected-window
  393. Set the selected window of frame object FRAME to WINDOW.
  394. If FRAME is nil, the selected frame is used.
  395. If FRAME is the selected frame, this makes WINDOW the selected window.
  396.  
  397. arguments: (FRAME WINDOW)
  398. Fframe-lowest-window
  399. Return the lowest window on FRAME which is at POSITION.
  400. If omitted, FRAME defaults to the currently selected frame.
  401. If omitted, POSITION defaults to 0 which is the leftmost lowest window.
  402. If POSITION is negative, it is considered to start from the right.
  403. The rightmost lowest window has a position of -1.
  404. If there is no window at the given POSITION, return nil.
  405.  
  406. arguments: (&optional FRAME POSITION)
  407. Fframe-highest-window
  408. Return the highest window on FRAME which is at POSITION.
  409. If omitted, FRAME defaults to the currently selected frame.
  410. If omitted, POSITION defaults to 0 which is the leftmost highest window.
  411. If POSITION is negative, it is considered to start from the right.
  412. The rightmost highest window has a position of -1.
  413. If there is no window at the given POSITION, return nil.
  414.  
  415. arguments: (&optional FRAME POSITION)
  416. Fframe-device
  417. Return the device that FRAME is on.
  418. If omitted, FRAME defaults to the currently selected frame.
  419.  
  420. arguments: (&optional FRAME)
  421. Fnext-frame
  422. Return the next frame in the frame list after FRAME.
  423. By default, skip minibuffer-only frames.
  424. If omitted, FRAME defaults to the selected frame.
  425. If optional argument MINIBUF is nil, exclude minibuffer-only frames.
  426. If MINIBUF is a window, include only its own frame
  427. and any frame now using that window as the minibuffer.
  428. If MINIBUF is `visible', include all visible frames.
  429. If MINIBUF is 0, include all visible and iconified frames.
  430. Otherwise, include all frames.
  431.  
  432. arguments: (&optional FRAME MINIBUF)
  433. Fprevious-frame
  434. Return the previous frame in the frame list before FRAME.
  435. By default, skip minibuffer-only frames.
  436. If omitted, FRAME defaults to the selected frame.
  437. If optional argument MINIBUF is nil, exclude minibuffer-only frames.
  438. If MINIBUF is a window, include only its own frame
  439. and any frame now using that window as the minibuffer.
  440. If MINIBUF is `visible', include all visible frames.
  441. If MINIBUF is 0, include all visible and iconified frames.
  442. Otherwise, include all frames.
  443.  
  444. arguments: (&optional FRAME MINIBUF)
  445. Fdelete-frame
  446. Delete FRAME, permanently eliminating it from use.
  447. If omitted, FRAME defaults to the selected frame.
  448. A frame may not be deleted if its minibuffer is used by other frames.
  449.  
  450. arguments: (&optional FRAME IGNORED)
  451. Fmouse-position
  452. Return a list (WINDOW X . Y) giving the current mouse window and position.
  453. The position is given in character cells, where (0, 0) is the
  454. upper-left corner of the window.
  455.  
  456. DEVICE specifies the device on which to read the mouse position, and
  457. defaults to the selected device.  If the device is a mouseless terminal
  458. or Emacs hasn't been programmed to read its mouse position, it returns
  459. the device's selected window for WINDOW and nil for X and Y.
  460.  
  461. arguments: (&optional DEVICE)
  462. Fmouse-pixel-position
  463. Return a list (WINDOW X . Y) giving the current mouse window and position.
  464. The position is given in pixel units, where (0, 0) is the
  465. upper-left corner.
  466.  
  467. DEVICE specifies the device on which to read the mouse position, and
  468. defaults to the selected device.  If the device is a mouseless terminal
  469. or Emacs hasn't been programmed to read its mouse position, it returns
  470. the device's selected window for FRAME and nil for X and Y.
  471.  
  472. arguments: (&optional DEVICE)
  473. Fset-mouse-position
  474. Move the mouse pointer to the center of character cell (X,Y) in WINDOW.
  475.  
  476. arguments: (WINDOW X Y)
  477. Fset-mouse-pixel-position
  478. Move the mouse pointer to pixel position (X,Y) in WINDOW.
  479.  
  480. arguments: (WINDOW X Y)
  481. Fframe-configuration
  482. Return object describing current frame configuration.
  483. The frame configuration is the current mouse position and selected frame.
  484. This object can be given to `restore-frame-configuration'
  485. to restore this frame configuration.
  486.  
  487. arguments: ()
  488. Frestore-frame-configuration
  489. Restores frame configuration CONFIGURATION.
  490.  
  491. arguments: (CONFIG)
  492. Fmake-frame-visible
  493. Make the frame FRAME visible (assuming it is an X-window).
  494. If omitted, FRAME defaults to the currently selected frame.
  495. Also raises the frame so that nothing obscures it.
  496.  
  497. arguments: (&optional FRAME)
  498. Fmake-frame-invisible
  499. Unconditionally removes frame from the display (assuming it is an X-window).
  500. If omitted, FRAME defaults to the currently selected frame.
  501. If what you want to do is iconify the frame (if the window manager uses
  502. icons) then you should call `iconify-frame' instead.
  503.  
  504. arguments: (&optional FRAME IGNORED)
  505. Ficonify-frame
  506. Make the frame FRAME into an icon, if the window manager supports icons.
  507. If omitted, FRAME defaults to the currently selected frame.
  508.  
  509. arguments: (&optional FRAME)
  510. Fdeiconify-frame
  511. Open (de-iconify) the iconified frame FRAME.
  512. Under X, this is currently the same as `make-frame-visible'.
  513. If omitted, FRAME defaults to the currently selected frame.
  514. Also raises the frame so that nothing obscures it.
  515.  
  516. arguments: (&optional FRAME)
  517. Fframe-visible-p
  518. Return t if FRAME is now "visible" (actually in use for display).
  519. A frame that is not visible is not updated, and, if it works through a
  520. window system, may not show at all.
  521.  
  522. arguments: (FRAME)
  523. Fframe-totally-visible-p
  524. Return T if frame is not obscured by any other X windows, NIL otherwise.
  525. Always returns t for tty frames.
  526.  
  527. arguments: (&optional FRAME)
  528. Fframe-iconified-p
  529. Return t if FRAME is iconified.
  530. Not all window managers use icons; some merely unmap the window, so this
  531. function is not the inverse of `frame-visible-p'.  It is possible for a
  532. frame to not be visible and not be iconified either.  However, if the
  533. frame is iconified, it will not be visible.
  534.  
  535. arguments: (FRAME)
  536. Fvisible-frame-list
  537. Return a list of all frames now "visible" (being updated).
  538. If DEVICE is specified only frames on that device will be returned.
  539.  
  540. arguments: (&optional DEVICE)
  541. Fraise-frame
  542. Bring FRAME to the front, so it occludes any frames it overlaps.
  543. If omitted, FRAME defaults to the currently selected frame.
  544. If FRAME is invisible, make it visible.
  545. If Emacs is displaying on an ordinary terminal or some other device which
  546. doesn't support multiple overlapping frames, this function does nothing.
  547.  
  548. arguments: (&optional FRAME)
  549. Flower-frame
  550. Send FRAME to the back, so it is occluded by any frames that overlap it.
  551. If omitted, FRAME defaults to the currently selected frame.
  552. If Emacs is displaying on an ordinary terminal or some other device which
  553. doesn't support multiple overlapping frames, this function does nothing.
  554.  
  555. arguments: (&optional FRAME)
  556. Fframe-parameters
  557. Return the parameters-alist of frame FRAME.
  558. It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.
  559. The meaningful PARMs depend on the kind of frame.
  560. If FRAME is omitted, return information on the currently selected frame.
  561.  
  562. See the variables `default-frame-alist', `default-x-frame-alist', and
  563. `default-tty-frame-alist' for a description of the parameters meaningful
  564. for particular types of frames.
  565.  
  566. arguments: (&optional FRAME)
  567. Fmodify-frame-parameters
  568. Modify the parameters of frame FRAME according to ALIST.
  569. ALIST is an alist of parameters to change and their new values.
  570. Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.
  571. The meaningful PARMs depend on the kind of frame; undefined PARMs are
  572. ignored.
  573.  
  574. See the variables `default-frame-alist', `default-x-frame-alist', and
  575. `default-tty-frame-alist' for a description of the parameters recognized
  576. for particular types of frames.
  577.  
  578. arguments: (FRAME ALIST)
  579. Fframe-height
  580. Return number of lines available for display on FRAME.
  581.  
  582. arguments: (&optional FRAME)
  583. Fframe-width
  584. Return number of columns available for display on FRAME.
  585.  
  586. arguments: (&optional FRAME)
  587. Fframe-pixel-height
  588. Return the height in pixels of FRAME.
  589.  
  590. arguments: (&optional FRAME)
  591. Fframe-pixel-width
  592. Return the width in pixels of FRAME.
  593.  
  594. arguments: (&optional FRAME)
  595. Fframe-name
  596. Return the name of FRAME (defaulting to the selected frame).
  597. This is not the same as the `title' of the frame.
  598.  
  599. arguments: (&optional FRAME)
  600. Fset-frame-height
  601. Specify that the frame FRAME has LINES lines.
  602. Optional third arg non-nil means that redisplay should use LINES lines
  603. but that the idea of the actual height of the frame should not be changed.
  604.  
  605. arguments: (FRAME ROWS &optional PRETEND)
  606. Fset-frame-width
  607. Specify that the frame FRAME has COLS columns.
  608. Optional third arg non-nil means that redisplay should use COLS columns
  609. but that the idea of the actual width of the frame should not be changed.
  610.  
  611. arguments: (FRAME COLS &optional PRETEND)
  612. Fset-frame-size
  613. Sets size of FRAME to COLS by ROWS.
  614. Optional fourth arg non-nil means that redisplay should use COLS by ROWS
  615. but that the idea of the actual size of the frame should not be changed.
  616.  
  617. arguments: (FRAME COLS ROWS &optional PRETEND)
  618. Fset-frame-position
  619. Sets position of FRAME in pixels to XOFFSET by YOFFSET.
  620. This is actually the position of the upper left corner of the frame.
  621. Negative values for XOFFSET or YOFFSET are interpreted relative to
  622. the rightmost or bottommost possible position (that stays within the screen).
  623.  
  624. arguments: (FRAME XOFFSET YOFFSET)
  625. Vdefault-minibuffer-frame
  626. A frame-object holding the default minibuffer for minibufferless frames.
  627. When you create a minibufferless frame, by default it will use the
  628. minibuffer of this frame.  It is up to you to create a suitable frame
  629. and store it in this variable.Vdelete-frame-hook
  630. Function or functions to call when a frame is deleted.
  631. One argument, the to-be-deleted frame.Vcreate-frame-hook
  632. Function or functions to call when a frame is created.
  633. One argument, the newly-created frame.Vmouse-enter-frame-hook
  634. Function or functions to call when mouse enters a frame.
  635. One argument, the frame.
  636. Be careful not to make assumptions about the window manger's focus model.
  637. In most cases, the `deselect-frame-hook' is more appropriate.Vmouse-leave-frame-hook
  638. Function or functions to call when mouse leaves frame.
  639. One argument, the frame.
  640. Be careful not to make assumptions about the window manger's focus model.
  641. In most cases, the `select-frame-hook' is more appropriate.Vmap-frame-hook
  642. Function or functions to call when frame is mapped.
  643. One argument, the frame.Vunmap-frame-hook
  644. Function or functions to call when frame is unmapped.
  645. One argument, the frame.Vmouse-motion-handler
  646. Handler for motion events.  One arg, the event.
  647. For most applications, you should use `mode-motion-hook' instead of this.Vsynchronize-minibuffers
  648. Set to t if all minibuffer windows are to be synchronized.
  649. This will cause echo area messages to appear in the minibuffers of all
  650. visible frames.Vframe-title-format
  651. Controls the title of the X window corresponding to the selected frame.
  652. This is the same format as `modeline-format' with the exception that
  653. %- is ignored.Vframe-icon-title-format
  654. Controls the title of the icon corresponding to the selected frame.
  655. See also the variable `frame-title-format'Vdefault-frame-name
  656. The default name to assign to newly-created frames.
  657. This can be overridden by arguments to `make-frame'.
  658. This must be a string.Vdefault-frame-alist
  659. Alist of default values for frame creation, other than the first one.
  660. These may be set in your init file, like this:
  661.  
  662.   (setq default-frame-alist '((width . 80) (height . 55)))
  663.  
  664. Since the first X frame is created before loading your .emacs file,
  665. you must use the X resource database for that.
  666.  
  667. See also the variables `default-x-frame-alist' and
  668. `default-tty-frame-alist', which are like `default-frame-alist'
  669. except that they apply only to X or tty frames, respectively
  670. (whereas `default-frame-alist' applies to all types of frames).Fredisplay-echo-area
  671. Ensure that all minibuffers are correctly showing the echo area.
  672.  
  673. arguments: ()
  674. Fredraw-frame
  675. Clear frame FRAME and output again what is supposed to appear on it.
  676.  
  677. arguments: (FRAME)
  678. Fredraw-display
  679. Redraw all frames on DEVICE marked as having their image garbled.
  680. DEVICE defaults to the selected device.
  681. If DEVICE is t, all devices will have their frames checked.
  682.  
  683. arguments: (&optional DEVICE)
  684. Fredraw-modeline
  685. Force the modeline of the current buffer to be redisplayed.
  686. With optional non-nil ALL, force redisplay of all modelines.
  687.  
  688. arguments: (&optional ALL)
  689. Fforce-redisplay
  690. Force an immediate redisplay of all frames.
  691. Will still cause a redisplay when there is input pending (unlike when
  692. the display is updated from `next-event').  This function differs from
  693. `redraw-display' in that it causes an immediate, visible update of the
  694. display's contents.  Unlike `redraw-frame' or `recenter', it does not
  695. mark any frame's current contents as invalid.
  696.  
  697. arguments: ()
  698. Fforce-cursor-redisplay
  699. Force an immediate update of the cursor on the selected frame.
  700.  
  701. arguments: ()
  702. Vredisplay-cache-adjustment
  703. (Temporary) Setting this will impact the performance of the internal
  704. line start cache.Vglobal-mode-string
  705. String displayed by modeline-format's "%m" specification.Vscroll-step
  706. *The number of lines to try scrolling a window by when point moves out.
  707. If that fails to bring point back on frame, point is centered instead.
  708. If this is zero, point is always centered after it moves off frame.Vline-number-mode
  709. *Whether to display line numbers in the modeline.Vvisible-bell
  710. *Non-nil means try to flash the frame to represent a bell.Vno-redraw-on-reenter
  711. *Non-nil means no need to redraw entire frame after suspending.
  712. A non-nil value is useful if the terminal can automatically preserve
  713. Emacs's frame display when you reenter Emacs.
  714. It is up to you to set this variable if your terminal can do that.Vwindow-system
  715. A symbol naming the window-system under which Emacs is running,
  716. such as `x', or nil if emacs is running on an ordinary terminal.
  717. This variable is OBSOLETE and will be removed in a future version.Vinitial-window-system
  718. DON'T TOUCHVwindow-system-version
  719. The version number of the window system in use.
  720. For X windows, this is 10 or 11.Vcursor-in-echo-area
  721. Non-nil means put cursor in minibuffer, at end of any message there.Vbar-cursor
  722. Use vertical bar cursor if non-nil.  If t width is 1 pixel, otherwise 2.Vpre-redisplay-hook
  723. Function or functions to run before every redisplay.
  724. Functions on this hook must be careful to avoid signalling errors!Vpost-redisplay-hook
  725. Function or functions to run after every redisplay.
  726. Functions on this hook must be careful to avoid signalling errors!Vdisplay-warning-tick
  727. Bump this to tell the C code to call `display-warning-buffer'
  728. at next redisplay.  You should not normally change this; the function
  729. `display-warning' automatically does this at appropriate times.Vinhibit-warning-display
  730. Non-nil means inhibit display of warning messages.
  731. You should *bind* this, not set it.  Any pending warning messages
  732. will be displayed when the binding no longer applies.Vleft-margin-width
  733. *Width of left margin.
  734. This is a specifier; use `set-specifier' to change it.Vright-margin-width
  735. *Width of right margin.
  736. This is a specifier; use `set-specifier' to change it.Vminimum-line-ascent
  737. *Minimum ascent height of lines.
  738. This is a specifier; use `set-specifier' to change it.Vminimum-line-descent
  739. *Minimum descent height of lines.
  740. This is a specifier; use `set-specifier' to change it.Vuse-left-overflow
  741. *Non-nil means use the left outside margin as extra whitespace when
  742. displaying 'whitespace or 'inside-margin glyphs.
  743. This is a specifier; use `set-specifier' to change it.Vuse-right-overflow
  744. *Non-nil means use the right outside margin as extra whitespace when
  745. displaying 'whitespace or 'inside-margin glyphs.
  746. This is a specifier; use `set-specifier' to change it.Vterminal-device
  747. The initial device-object, which represent's Emacs's stdout.Vterminal-frame
  748. The initial frame-object, which represents Emacs's stdout.Fwindowp
  749. Return t if OBJ is a window.
  750.  
  751. arguments: (OBJ)
  752. Fwindow-live-p
  753. Return t if OBJ is a window which is currently visible.
  754.  
  755. arguments: (OBJ)
  756. Fselected-window
  757. Return the window that the cursor now appears in and commands apply to.
  758. If DEVICE is not specified, the selected device is used.
  759.  
  760. arguments: (&optional DEVICE)
  761. Fminibuffer-window
  762. Return the window used now for minibuffers.
  763. If the optional argument DEV-OR-FRAME is specified and is a frame, return
  764. the minibuffer window used by that frame.  If DEV-OR-FRAME is a device,
  765. then the selected frame on that device will be used.  Otherwise, the
  766. selected frame on the current device is assumed.
  767.  
  768. arguments: (&optional DEV-OR-FRAME)
  769. Fwindow-minibuffer-p
  770. Return non-nil if WINDOW is a minibuffer window.
  771.  
  772. arguments: (WINDOW)
  773. Fwindow-lowest-p
  774. Return non-nil if WINDOW is along the bottom of its frame.
  775.  
  776. arguments: (WINDOW)
  777. Fwindow-highest-p
  778. Return non-nil if WINDOW is along the top of its frame.
  779.  
  780. arguments: (WINDOW)
  781. Fpos-visible-in-window-p
  782. Return t if position POS is currently on the frame in WINDOW.
  783. Returns nil if that position is scrolled vertically out of view.
  784. POS defaults to point in WINDOW's buffer; WINDOW, to the selected window.
  785.  
  786. arguments: (&optional POS WINDOW)
  787. Fwindow-buffer
  788. Return the buffer that WINDOW is displaying.
  789.  
  790. arguments: (&optional WINDOW)
  791. Fwindow-frame
  792. Return the frame that window WINDOW is on.
  793.  
  794. arguments: (&optional WINDOW)
  795. Fwindow-height
  796. Return the number of lines in WINDOW (including its modeline).
  797.  
  798. arguments: (&optional WINDOW)
  799. Fwindow-pixel-height
  800. Return the height of WINDOW in pixels.  Defaults to current window.
  801.  
  802. arguments: (&optional WINDOW)
  803. Fwindow-width
  804. Return the number of display columns in WINDOW.
  805. This is the width that is usable columns available for text in WINDOW.
  806.  
  807. arguments: (&optional WINDOW)
  808. Fwindow-pixel-width
  809. Return the width of WINDOW in pixels.  Defaults to current window.
  810.  
  811. arguments: (&optional WINDOW)
  812. Fwindow-hscroll
  813. Return the number of columns by which WINDOW is scrolled from left margin.
  814.  
  815. arguments: (&optional WINDOW)
  816. Fset-window-hscroll
  817. Set number of columns WINDOW is scrolled from left margin to NCOL.
  818. NCOL should be zero or positive.
  819.  
  820. arguments: (WINDOW NCOL)
  821. Fwindow-pixel-edges
  822. Return a list of the pixel edge coordinates of WINDOW.
  823. (LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at top left corner of frame.
  824. The frame toolbars and menubars are considered to be outside of this area.
  825.  
  826. arguments: (&optional WINDOW)
  827. Fwindow-point
  828. Return current value of point in WINDOW.
  829. For a nonselected window, this is the value point would have
  830. if that window were selected.
  831.  
  832. Note that, when WINDOW is the selected window and its buffer
  833. is also currently selected, the value returned is the same as (point).
  834. It would be more strictly correct to return the `top-level' value
  835. of point, outside of any save-excursion forms.
  836. But that is hard to define.
  837.  
  838. arguments: (&optional WINDOW)
  839. Fwindow-start
  840. Return position at which display currently starts in WINDOW.
  841.  
  842. arguments: (&optional WINDOW)
  843. Fwindow-end
  844. Return position at which display currently ends in WINDOW.
  845. This is updated by redisplay, when it runs to completion.
  846. Simply changing the buffer text or setting `window-start'
  847. does not update this value.
  848. If GUARANTEE is non-nil, then the return value is guaranteed to be
  849. the value of window-end at the end of the next full redisplay assuming
  850. nothing else changes in the meantime.  This function is potentially much
  851. slower with this flag set.
  852.  
  853. arguments: (&optional WINDOW GUARANTEE)
  854. Fset-window-point
  855. Make point value in WINDOW be at position POS in WINDOW's buffer.
  856.  
  857. arguments: (WINDOW POS)
  858. Fset-window-start
  859. Make display in WINDOW start at position POS in WINDOW's buffer.
  860. Optional third arg NOFORCE non-nil inhibits next redisplay
  861. from overriding motion of point in order to display at this exact start.
  862.  
  863. arguments: (WINDOW POS &optional NOFORCE)
  864. Fwindow-dedicated-p
  865. Return WINDOW's dedicated object, usually t or nil.
  866. See also `set-window-buffer-dedicated'.
  867.  
  868. arguments: (WINDOW)
  869. Fset-window-buffer-dedicated
  870. Make WINDOW display BUFFER and be dedicated to that buffer.
  871. Then Emacs will not automatically change which buffer appears in WINDOW.
  872. If BUFFER is nil, make WINDOW not be dedicated (but don't change which
  873. buffer appears in it currently).
  874.  
  875. arguments: (WINDOW BUFFER)
  876. Fdelete-window
  877. Remove WINDOW from the display.  Default is selected window.
  878. If window is the only one on the frame, the frame is destroyed.
  879.  
  880. arguments: (&optional WINDOW)
  881. Fnext-window
  882. Return next window after WINDOW in canonical ordering of windows.
  883. If omitted, WINDOW defaults to the selected window.
  884.  
  885. Optional second arg MINIBUF t means count the minibuffer window even
  886. if not active.  MINIBUF nil or omitted means count the minibuffer iff
  887. it is active.  MINIBUF neither t nor nil means not to count the
  888. minibuffer even if it is active.
  889.  
  890. Several frames may share a single minibuffer; if the minibuffer
  891. counts, all windows on all frames that share that minibuffer count
  892. too.  Therefore, `next-window' can be used to iterate through the
  893. set of windows even when the minibuffer is on another frame.  If the
  894. minibuffer does not count, only windows from WINDOW's frame count.
  895.  
  896. Optional third arg ALL-FRAMES t means include windows on all frames.
  897. ALL-FRAMES nil or omitted means cycle within the frames as specified
  898. above.  ALL-FRAMES = `visible' means include windows on all visible frames.
  899. ALL-FRAMES = 0 means include windows on all visible and iconified frames.
  900. Anything else means restrict to WINDOW's frame.
  901.  
  902. If you use consistent values for MINIBUF and ALL-FRAMES, you can use
  903. `next-window' to iterate through the entire cycle of acceptable
  904. windows, eventually ending up back at the window you started with.
  905. `previous-window' traverses the same cycle, in the reverse order.
  906.  
  907. arguments: (&optional WINDOW MINIBUF ALL-FRAMES IGNORED)
  908. Fprevious-window
  909. Return the window preceeding WINDOW in canonical ordering of windows.
  910. If omitted, WINDOW defaults to the selected window.
  911.  
  912. Optional second arg MINIBUF t means count the minibuffer window even
  913. if not active.  MINIBUF nil or omitted means count the minibuffer iff
  914. it is active.  MINIBUF neither t nor nil means not to count the
  915. minibuffer even if it is active.
  916.  
  917. Several frames may share a single minibuffer; if the minibuffer
  918. counts, all windows on all frames that share that minibuffer count
  919. too.  Therefore, `previous-window' can be used to iterate through
  920. the set of windows even when the minibuffer is on another frame.  If
  921. the minibuffer does not count, only windows from WINDOW's frame count
  922.  
  923. Optional third arg ALL-FRAMES t means include windows on all frames.
  924. ALL-FRAMES nil or omitted means cycle within the frames as specified
  925. above.  ALL-FRAMES = `visible' means include windows on all visible frames.
  926. ALL-FRAMES = 0 means include windows on all visible and iconified frames.
  927. Anything else means restrict to WINDOW's frame.
  928.  
  929. If you use consistent values for MINIBUF and ALL-FRAMES, you can use
  930. `previous-window' to iterate through the entire cycle of acceptable
  931. windows, eventually ending up back at the window you started with.
  932. `next-window' traverses the same cycle, in the reverse order.
  933.  
  934. arguments: (&optional WINDOW MINIBUF ALL-FRAMES IGNORED)
  935. Fnext-vertical-window
  936. Return the next window which is vertically after WINDOW.
  937.  
  938.  
  939. arguments: (&optional WINDOW)
  940. Fother-window
  941. Select the N'th different window on this frame.
  942. All windows on current frame are arranged in a cyclic order.
  943. This command selects the window N steps away in that order.
  944. A negative N moves in the opposite order.
  945.  
  946. If optional argument FRAME is `visible', search all visible frames.
  947. If FRAME is 0, search all visible and iconified frames.
  948. If FRAME is t, search all frames.
  949. If FRAME is nil, search only the selected frame.
  950. If FRAME is a frame, search only that frame.
  951.  
  952. arguments: (N &optional FRAME IGNORED)
  953. Fget-lru-window
  954. Return the window least recently selected or used for display.
  955. If optional argument FRAME is `visible', search all visible frames.
  956. If FRAME is 0, search all visible and iconified frames.
  957. If FRAME is t, search all frames.
  958. If FRAME is nil, search only the selected frame.
  959. If FRAME is a frame, search only that frame.
  960.  
  961. arguments: (&optional FRAME)
  962. Fget-largest-window
  963. Return the window largest in area.
  964. If optional argument FRAME is `visible', search all visible frames.
  965. If FRAME is 0, search all visible and iconified frames.
  966. If FRAME is t, search all frames.
  967. If FRAME is nil, search only the selected frame.
  968. If FRAME is a frame, search only that frame.
  969.  
  970. arguments: (&optional FRAME)
  971. Fget-buffer-window
  972. Return a window currently displaying BUFFER, or nil if none.
  973. If optional argument FRAME is `visible', search all visible frames.
  974. If optional argument FRAME is 0, search all visible and iconified frames.
  975. If FRAME is t, search all frames.
  976. If FRAME is nil, search only the selected frame.
  977. If FRAME is a frame, search only that frame.
  978.  
  979. arguments: (BUFFER &optional FRAME IGNORED)
  980. Fwindow-left-margin-pixel-width
  981. Return the width in pixels of the left outside margin of window WINDOW.
  982. If WINDOW is nil, the selected window is assumed.
  983.  
  984. arguments: (&optional WINDOW)
  985. Fwindow-right-margin-pixel-width
  986. Return the width in pixels of the right outside margin of window WINDOW.
  987. If WINDOW is nil, the selected window is assumed.
  988.  
  989. arguments: (&optional WINDOW)
  990. Fdelete-other-windows
  991. Make WINDOW (or the selected window) fill its frame.
  992. Only the frame WINDOW is on is affected.
  993. This function tries to reduce display jumps
  994. by keeping the text previously visible in WINDOW
  995. in the same place on the frame.  Doing this depends on
  996. the value of (window-start WINDOW), so if calling this function
  997. in a program gives strange scrolling, make sure the window-start
  998. value is reasonable when this function is called.
  999.  
  1000. arguments: (&optional WINDOW)
  1001. Fdelete-windows-on
  1002. Delete all windows showing BUFFER.
  1003. Optional second argument FRAME controls which frames are affected.
  1004. If nil or omitted, delete all windows showing BUFFER in any frame.
  1005. If t, delete only windows showing BUFFER in the selected frame.
  1006. If `visible', delete all windows showing BUFFER in any visible frame.
  1007. If a frame, delete only windows showing BUFFER in that frame.
  1008.  
  1009. arguments: (BUFFER &optional FRAME)
  1010. Freplace-buffer-in-windows
  1011. Replace BUFFER with some other buffer in all windows showing it.
  1012.  
  1013. arguments: (BUFFER)
  1014. Fset-window-buffer
  1015. Make WINDOW display BUFFER as its contents.
  1016. BUFFER can be a buffer or buffer name.
  1017.  
  1018. arguments: (WINDOW BUFFER)
  1019. Fselect-window
  1020. Select WINDOW.  Most editing will apply to WINDOW's buffer.
  1021. The main editor command loop selects the buffer of the selected window
  1022. before each command.
  1023.  
  1024. arguments: (WINDOW)
  1025. Fdisplay-buffer
  1026. Make BUFFER appear in some window on the current frame, but don't
  1027. select it.
  1028. BUFFER can be a buffer or a buffer name.
  1029. If BUFFER is shown already in some window in the current frame,
  1030. just uses that one, unless the window is the selected window and
  1031. NOT-THIS-WINDOW-P is non-nil (interactively, with prefix arg).
  1032.  
  1033. If BUFFER has a dedicated frame, display on that frame instead of
  1034. the current frame, unless OVERRIDE-FRAME is non-nil.
  1035.  
  1036. If OVERRIDE-FRAME is non-nil, display on that frame instead of
  1037. the current frame (or the dedicated frame).
  1038.  
  1039. If `pop-up-windows' is non-nil, always use the
  1040. current frame and create a new window regardless of whether the
  1041. buffer has a dedicated frame, and regardless of whether
  1042. OVERRIDE-FRAME was specified.
  1043.  
  1044. Returns the window displaying BUFFER.
  1045.  
  1046. arguments: (BUFFER &optional NOT-THIS-WINDOW-P OVERRIDE-FRAME)
  1047. Fsplit-window
  1048. Split WINDOW, putting SIZE lines in the first of the pair.
  1049. WINDOW defaults to selected one and SIZE to half its size.
  1050. If optional third arg HOR-FLAG is non-nil, split side by side
  1051. and put SIZE columns in the first of the pair.
  1052.  
  1053. arguments: (&optional WINDOW CHSIZE HORFLAG)
  1054. Fenlarge-window
  1055. Make current window ARG lines bigger.
  1056. From program, optional second arg non-nil means grow sideways ARG columns.
  1057.  
  1058. arguments: (N &optional SIDE)
  1059. Fshrink-window
  1060. Make current window ARG lines smaller.
  1061. From program, optional second arg non-nil means shrink sideways ARG columns.
  1062.  
  1063. arguments: (N &optional SIDE)
  1064. Fscroll-up
  1065. Scroll text of current window upward ARG lines; or near full screen if no ARG.
  1066. A near full screen is `next-screen-context-lines' less than a full screen.
  1067. Negative ARG means scroll downward.
  1068. When calling from a program, supply a number as argument or nil.
  1069.  
  1070. arguments: (&optional N)
  1071. Fscroll-down
  1072. Scroll text of current window downward ARG lines; or near full screen if no ARG.
  1073. A near full screen is `next-screen-context-lines' less than a full screen.
  1074. Negative ARG means scroll upward.
  1075. When calling from a program, supply a number as argument or nil.
  1076.  
  1077. arguments: (&optional N)
  1078. Fother-window-for-scrolling
  1079. Return the other window for "other window scroll" commands.
  1080. If in the minibuffer, `minibuffer-scroll-window' if non-nil
  1081. specifies the window.
  1082. If `other-window-scroll-buffer' is non-nil, a window
  1083. showing that buffer is used.
  1084.  
  1085. arguments: ()
  1086. Fscroll-other-window
  1087. Scroll next window upward ARG lines; or near full frame if no ARG.
  1088. The next window is the one below the current one; or the one at the top
  1089. if the current one is at the bottom.  Negative ARG means scroll downward.
  1090. When calling from a program, supply a number as argument or nil.
  1091.  
  1092. If in the minibuffer, `minibuf-scroll-window' if non-nil
  1093. specifies the window to scroll.
  1094. If `other-window-scroll-buffer' is non-nil, scroll the window
  1095. showing that buffer, popping the buffer up if necessary.
  1096.  
  1097. arguments: (&optional N)
  1098. Fscroll-left
  1099. Scroll selected window display ARG columns left.
  1100. Default for ARG is window width minus 2.
  1101.  
  1102. arguments: (&optional ARG)
  1103. Fscroll-right
  1104. Scroll selected window display ARG columns right.
  1105. Default for ARG is window width minus 2.
  1106.  
  1107. arguments: (&optional ARG)
  1108. Frecenter
  1109. Center point in WINDOW and redisplay frame.  With ARG, put point on line ARG.
  1110. The desired position of point is always relative to the window.
  1111. Just C-u as prefix means put point in the center of the window.
  1112. No arg (i.e., it is nil) erases the entire frame and then
  1113. redraws with point in the center of the window.
  1114. If WINDOW is nil, the selected window is used.
  1115.  
  1116. arguments: (&optional N WINDOW)
  1117. Fmove-to-window-line
  1118. Position point relative to WINDOW.
  1119. With no argument, position text at center of window.
  1120. An argument specifies window line; zero means top of window,
  1121. negative means relative to bottom of window.
  1122. If WINDOW is nil, the selected window is used.
  1123.  
  1124. arguments: (ARG &optional WINDOW)
  1125. Fwindow-configuration-p
  1126. T if OBJECT is a window-configuration object.
  1127.  
  1128. arguments: (OBJ)
  1129. Fset-window-configuration
  1130. Set the configuration of windows and buffers as specified by CONFIGURATION.
  1131. CONFIGURATION must be a value previously returned
  1132. by `current-window-configuration' (which see).
  1133.  
  1134. arguments: (CONFIGURATION)
  1135. Fcurrent-window-configuration
  1136. Return an object representing the current window configuration of FRAME.
  1137. If FRAME is nil or omitted, use the selected frame.
  1138. This describes the number of windows, their sizes and current buffers,
  1139. and for each displayed buffer, where display starts, and the positions of
  1140. point and mark.  An exception is made for point in the current buffer:
  1141. its value is -not- saved.
  1142.  
  1143. arguments: (&optional FRAME)
  1144. Fsave-window-excursion
  1145. Execute body, preserving window sizes and contents.
  1146. Restores which buffer appears in which window, where display starts,
  1147. as well as the current buffer.
  1148. Does not restore the value of point in current buffer.Vscroll-on-clipped-lines
  1149. *Non-nil means to scroll if point lands on a line which is clipped.Vtemp-buffer-show-function
  1150. Non-nil means call as function to display a help buffer.
  1151. Used by `with-output-to-temp-buffer'.Vdisplay-buffer-function
  1152. If non-nil, function to call to handle `display-buffer'.
  1153. It will receive three args: the same as those to `display-buffer'.Vpre-display-buffer-function
  1154. If non-nil, function that will be called from `display-buffer'
  1155. as the first action.  It will receive three args: the same as those
  1156. to `display-buffer'.
  1157. This function may be used to select an appropriate frame for the buffer,
  1158. for example.  See also the variable `display-buffer-function', which may
  1159. be used to completely replace the `display-buffer' function.Vminibuffer-scroll-window
  1160. Non-nil means it is the window that \<minibuffer-local-map>\[scroll-other-window] in minibuffer should scroll.Vother-window-scroll-buffer
  1161. If non-nil, this is a buffer and \[scroll-other-window] should scroll its window.Vpop-up-windows
  1162. *Non-nil means display-buffer should make new windows.Vnext-screen-context-lines
  1163. *Number of lines of continuity when scrolling by screenfuls.Vsplit-height-threshold
  1164. *display-buffer would prefer to split the largest window if this large.
  1165. If there is only one window, it is split regardless of this value.Vsplit-width-threshold
  1166. *display-buffer would prefer to split the largest window if this large.
  1167. If there is only one window, it is split regardless of this value.Vwindow-min-height
  1168. *Delete any window less than this tall (including its modeline).Vwindow-min-width
  1169. *Delete any window less than this wide.Vmodeline-shadow-thickness
  1170. *How thick to draw 3D shadows around modelines.
  1171. If this is set to 0, modelines will be the traditional 2D.  Sizes above
  1172. 10 will be accepted but the maximum thickness that will be drawn is 10.
  1173. This is a specifier; use `set-specifier' to change it.Vhas-modeline-p
  1174. *Whether the modeline should be displayed.
  1175. This is a specifier; use `set-specifier' to change it.Fallocate-event
  1176. Return an empty event structure.
  1177. WARNING, the event object returned may be a reused one; see the function
  1178. `deallocate-event'.
  1179.  
  1180. arguments: ()
  1181. Fdeallocate-event
  1182. Allow the given event structure to be reused.
  1183. You MUST NOT use this event object after calling this function with it.
  1184. You will lose.  It is not necessary to call this function, as event
  1185. objects are garbage-collected like all other objects; however, it may
  1186. be more efficient to explicitly deallocate events when you are sure
  1187. that that is safe.
  1188.  
  1189. arguments: (EVENT)
  1190. Fcopy-event
  1191. Make a copy of the given event object.
  1192. If a second argument is given, the first event is copied into the second
  1193. and the second is returned.  If the second argument is not supplied (or
  1194. is nil) then a new event will be made as with `allocate-event.'  See also
  1195. the function `deallocate-event'.
  1196.  
  1197. arguments: (EVENT1 &optional EVENT2)
  1198. Fevent-to-character
  1199. Return the closest ASCII approximation to the given event object.
  1200. If the event isn't a keypress, this returns nil.
  1201. If the ALLOW-EXTRA-MODIFIERS argument is non-nil, then this is lenient in
  1202.  its translation; it will ignore modifier keys other than control and meta,
  1203.  and will ignore the shift modifier on those characters which have no
  1204.  shifted ASCII equivalent (Control-Shift-A for example, will be mapped to
  1205.  the same ASCII code as Control-A).
  1206. If the ALLOW-META argument is non-nil, then the Meta modifier will be
  1207.  represented by turning on the high bit of the byte returned; otherwise, nil
  1208.  will be returned for events containing the Meta modifier.
  1209. If the ALLOW-NON-ASCII argument is non-nil, then characters which are
  1210.  present in the prevailing character set (see the `character-set-property'
  1211.  variable) will be returned as their code in that character set, instead of
  1212.  the return value being restricted to ASCII.
  1213. Note that specifying both ALLOW-META and ALLOW-NON-ASCII is ambiguous, as
  1214.  both use the high bit; `M-x' and `oslash' will be indistinguishable.
  1215.  
  1216. arguments: (EVENT &optional ALLOW-EXTRA-MODIFIERS ALLOW-META ALLOW-NON-ASCII)
  1217. Fcharacter-to-event
  1218. Converts a numeric ASCII value to an event structure, replete with
  1219. bucky bits.  The character is the first argument, and the event to fill
  1220. in is the second.  This function contains knowledge about what the codes
  1221. ``mean'' -- for example, the number 9 is converted to the character ``Tab'',
  1222. not the distinct character ``Control-I''.
  1223.  
  1224. Note that CH does not have to be a numeric value, but can be a symbol such
  1225.  as 'clear or a list such as '(control backspace).
  1226.  
  1227. If the optional second argument is an event, it is modified; otherwise, a
  1228.  new event object is created.
  1229.  
  1230. Optional third arg DEVICE is the device to store in the event; this also
  1231.  affects whether the high bit is interpreted as a meta key.  A value of nil
  1232.  means use the selected device but always treat the high bit as meta.
  1233.  
  1234. Beware that character-to-event and event-to-character are not strictly
  1235.  inverse functions, since events contain much more information than the
  1236.  ASCII character set can encode.
  1237.  
  1238. arguments: (CH &optional EVENT DEVICE)
  1239. Feventp
  1240. True if OBJECT is an event object.
  1241.  
  1242. arguments: (OBJECT)
  1243. Fevent-live-p
  1244. True if OBJECT is an event object that has not been deallocated.
  1245.  
  1246. arguments: (OBJECT)
  1247. Fkey-press-event-p
  1248. True if the argument is a key-press event object.
  1249.  
  1250. arguments: (OBJ)
  1251. Fbutton-press-event-p
  1252. True if the argument is a mouse-button-press event object.
  1253.  
  1254. arguments: (OBJ)
  1255. Fbutton-release-event-p
  1256. True if the argument is a mouse-button-release event object.
  1257.  
  1258. arguments: (OBJ)
  1259. Fbutton-event-p
  1260. True if the argument is a button-press or button-release event object.
  1261.  
  1262. arguments: (OBJ)
  1263. Fmotion-event-p
  1264. True if the argument is a mouse-motion event object.
  1265.  
  1266. arguments: (OBJ)
  1267. Fprocess-event-p
  1268. True if the argument is a process-output event object.
  1269.  
  1270. arguments: (OBJ)
  1271. Ftimeout-event-p
  1272. True if the argument is a timeout event object.
  1273.  
  1274. arguments: (OBJ)
  1275. Fmisc-user-event-p
  1276. True if the argument is a misc-user event object.
  1277. A misc-user event is a user event that is not a keypress or mouse click;
  1278. normally this means a menu selection or scrollbar action.
  1279.  
  1280. arguments: (OBJ)
  1281. Feval-event-p
  1282. True if the argument is an `eval' event object.
  1283.  
  1284. arguments: (OBJ)
  1285. Fevent-timestamp
  1286. Return the timestamp of the given event object.
  1287.  
  1288. arguments: (EVENT)
  1289. Fevent-key
  1290. Return the KeySym of the given key-press event.  This will be the
  1291. ASCII code of a printing character, or a symbol.
  1292.  
  1293. arguments: (EVENT)
  1294. Fevent-button
  1295. Return the button-number of the given mouse-button-press event.
  1296.  
  1297. arguments: (EVENT)
  1298. Fevent-modifier-bits
  1299. Return a number representing the modifier keys which were down
  1300. when the given mouse or keyboard event was produced.  See also the function
  1301. event-modifiers.
  1302.  
  1303. arguments: (EVENT)
  1304. Fevent-modifiers
  1305. Return a list of symbols, the names of the modifier keys
  1306. which were down when the given mouse or keyboard event was produced.
  1307. See also the function event-modifier-bits.
  1308.  
  1309. arguments: (EVENT)
  1310. Fevent-window-x-pixel
  1311. Return the X position in pixels of the given mouse event.
  1312. The value returned is relative to the window the event occurred in.
  1313. This will signal an error if the event is not a mouse-motion, button-press,
  1314. or button-release event.  See also `event-x-pixel'.
  1315.  
  1316. arguments: (EVENT)
  1317. Fevent-window-y-pixel
  1318. Return the Y position in pixels of the given mouse event.
  1319. The value returned is relative to the window the event occurred in.
  1320. This will signal an error if the event is not a mouse-motion, button-press,
  1321. or button-release event.  See also `event-y-pixel'.
  1322.  
  1323. arguments: (EVENT)
  1324. Fevent-x-pixel
  1325. Return the X position in pixels of the given mouse event.
  1326. The value returned is relative to the frame the event occurred in.
  1327. This will signal an error if the event is not a mouse-motion, button-press,
  1328. or button-release event.  See also `event-window-x-pixel'.
  1329.  
  1330. arguments: (EVENT)
  1331. Fevent-y-pixel
  1332. Return the Y position in pixels of the given mouse event.
  1333. The value returned is relative to the frame the event occurred in.
  1334. This will signal an error if the event is not a mouse-motion, button-press,
  1335. or button-release event.  See also `event-window-y-pixel'.
  1336.  
  1337. arguments: (EVENT)
  1338. Fevent-over-text-area-p
  1339. Given a mouse-motion, button-press, or button-release event, return
  1340. t if the event is over the text area of a window.  Otherwise, return
  1341. nil.  The modeline is not considered to be part of the text area.
  1342.  
  1343. arguments: (EVENT)
  1344. Fevent-over-modeline-p
  1345. Given a mouse-motion, button-press, or button-release event, return
  1346. t if the event is over the modeline of a window.  Otherwise, return nil.
  1347.  
  1348. arguments: (EVENT)
  1349. Fevent-over-border-p
  1350. Given a mouse-motion, button-press, or button-release event, return
  1351. t if the event is over an internal border.  Otherwise, return nil.
  1352.  
  1353. arguments: (EVENT)
  1354. Fevent-over-toolbar-p
  1355. Given a mouse-motion, button-press, or button-release event, return
  1356. t if the event is over a toolbar.  Otherwise, return nil.
  1357.  
  1358. arguments: (EVENT)
  1359. Fevent-device
  1360. Return the device that the given event occurred on.
  1361. This will be nil for some types of events (e.g. eval events).
  1362.  
  1363. arguments: (EVENT)
  1364. Fevent-frame
  1365. Given a mouse-motion, button-press, or button-release event, return
  1366. the frame on which that event occurred.  This will be nil for non-mouse
  1367. events.
  1368.  
  1369. arguments: (EVENT)
  1370. Fevent-window
  1371. Given a mouse motion, button press, or button release event, compute
  1372. and return the window on which that event occurred.  This may be nil if
  1373. the event occurred in the border or over a toolbar.  The modeline is
  1374. considered to be in the window it represents.
  1375.  
  1376. arguments: (EVENT)
  1377. Fevent-buffer
  1378. Given a mouse-motion, button-press, or button-release event, return
  1379. the buffer on which that event occurred.  This will be nil for non-mouse
  1380. events.  If event-over-text-area-p is nil, this will also be nil.
  1381.  
  1382. arguments: (EVENT)
  1383. Fevent-point
  1384. Return the character position of the given mouse-motion, button-press,
  1385. or button-release event.  If the event did not occur over a window, or did
  1386. not occur over text, then this returns nil.  Otherwise, it returns an index
  1387. into the buffer visible in the event's window.
  1388.  
  1389. arguments: (EVENT)
  1390. Fevent-closest-point
  1391. Return the character position of the given mouse-motion, button-press,
  1392. or button-release event.  If the event did not occur over a window or over
  1393. text, return the closest point to the location of the event.  If the Y pixel
  1394. position overlaps a window and the X pixel position is to the left of that
  1395. window, the closest point is the beginning of the line containing the
  1396. Y position.  If the Y pixel position overlaps a window and the X pixel
  1397. position is to the right of that window, the closest point is the end of the
  1398. line containing the Y position.  If the Y pixel position is above a window,
  1399. return 0.  If it is below a window, return the value of (window-end).
  1400.  
  1401. arguments: (EVENT)
  1402. Fevent-x
  1403. Return the X position of the given mouse-motion, button-press, or
  1404. button-release event in characters.  This is relative to the window the
  1405. event occurred over.
  1406.  
  1407. arguments: (EVENT)
  1408. Fevent-y
  1409. Return the Y position of the given mouse-motion, button-press, or
  1410. button-release event in characters.  This is relative to the window the
  1411. event occurred over.
  1412.  
  1413. arguments: (EVENT)
  1414. Fevent-glyph-extent
  1415. If the given mouse-motion, button-press, or button-release event happened
  1416. on top of a glyph, this returns its extent.  Otherwise return nil.
  1417.  
  1418. arguments: (EVENT)
  1419. Fevent-over-glyph-p
  1420. Given a mouse-motion, button-press, or button-release event, return
  1421. t if the event is over a glyph.  Otherwise, return nil.
  1422.  
  1423. arguments: (EVENT)
  1424. Fevent-glyph-x-pixel
  1425. Given a mouse-motion, button-press, or button-release event over a glyph,
  1426. return the X position of the pointer relative to the upper left of the
  1427. glyph.  If the event is not over a glyph, return nil.
  1428.  
  1429. arguments: (EVENT)
  1430. Fevent-glyph-y-pixel
  1431. Given a mouse-motion, button-press, or button-release event over a glyph,
  1432. return the Y position of the pointer relative to the upper left of the
  1433. glyph.  If the event is not over a glyph, return nil.
  1434.  
  1435. arguments: (EVENT)
  1436. Fevent-toolbar-button
  1437. If the given mouse-motion, button-press, or button-release event happened
  1438. on top of a toolbar button, return the button.  Otherwise, return nil.
  1439.  
  1440. arguments: (EVENT)
  1441. Fevent-process
  1442. Return the process of the given process-output event.
  1443.  
  1444. arguments: (EVENT)
  1445. Fevent-function
  1446. Return the callback function of the given timeout, misc-user, or eval event.
  1447.  
  1448. arguments: (EVENT)
  1449. Fevent-object
  1450. Return the callback function argument of the given timeout, misc-user, or
  1451. eval event.
  1452.  
  1453. arguments: (EVENT)
  1454. Vcharacter-set-property
  1455. A symbol used to look up the 8-bit character of a keysym.
  1456. To convert a keysym symbol to an 8-bit code, as when that key is
  1457. bound to self-insert-command, we will look up the property that this
  1458. variable names on the property list of the keysym-symbol.  The window-
  1459. system-specific code will set up appropriate properties and set this
  1460. variable.Finput-pending-p
  1461. T if command input is currently available with no waiting.
  1462. Actually, the value is nil only if we can be sure that no input is available.
  1463.  
  1464. arguments: ()
  1465. Fadd-timeout
  1466. Add a timeout, to be signaled after the timeout period has elapsed.
  1467. SECS is a number of seconds, expressed as an integer or a float.
  1468. FUNCTION will be called after that many seconds have elapsed, with one
  1469. argument, the given OBJECT.  If the optional RESIGNAL argument is provided,
  1470. then after this timeout expires, `add-timeout' will automatically be called
  1471. again with RESIGNAL as the first argument.
  1472.  
  1473. This function returns an object which is the id number of this particular
  1474. timeout.  You can pass that object to `disable-timeout' to turn off the
  1475. timeout before it has been signalled.
  1476.  
  1477. NOTE: Id numbers as returned by this function are in a distinct namespace
  1478. from those returned by `add-async-timeout'.  This means that the same id
  1479. number could refer to a pending synchronous timeout and a different pending
  1480. asynchronous timeout, and that you cannot pass an id from `add-timeout'
  1481. to `disable-async-timeout', or vice-versa.
  1482.  
  1483. The number of seconds may be expressed as a floating-point number, in which
  1484. case some fractional part of a second will be used.  Caveat: the usable
  1485. timeout granularity will vary from system to system.
  1486.  
  1487. Adding a timeout causes a timeout event to be returned by `next-event', and
  1488. the function will be invoked by `dispatch-event,' so if emacs is in a tight
  1489. loop, the function will not be invoked until the next call to sit-for or
  1490. until the return to top-level (the same is true of process filters).
  1491.  
  1492. If you need to have a timeout executed even when XEmacs is in the midst of
  1493. running Lisp code, use `add-async-timeout'.
  1494.  
  1495. WARNING: if you are thinking of calling add-timeout from inside of a
  1496. callback function as a way of resignalling a timeout, think again.  There
  1497. is a race condition.  That's why the RESIGNAL argument exists.
  1498.  
  1499. arguments: (SECS FUNCTION OBJECT &optional RESIGNAL)
  1500. Fdisable-timeout
  1501. Disable a timeout from signalling any more.
  1502. ID should be a timeout id number as returned by `add-timeout'.  If ID
  1503. corresponds to a one-shot timeout that has already signalled, nothing
  1504. will happen.
  1505.  
  1506. It will not work to call this function on an id number returned by
  1507. `add-async-timeout'.  Use `disable-async-timeout' for that.
  1508.  
  1509. arguments: (ID)
  1510. Fadd-async-timeout
  1511. Add an asynchronous timeout, to be signaled after an interval has elapsed.
  1512. SECS is a number of seconds, expressed as an integer or a float.
  1513. FUNCTION will be called after that many seconds have elapsed, with one
  1514. argument, the given OBJECT.  If the optional RESIGNAL argument is provided,
  1515. then after this timeout expires, `add-async-timeout' will automatically be
  1516. called again with RESIGNAL as the first argument.
  1517.  
  1518. This function returns an object which is the id number of this particular
  1519. timeout.  You can pass that object to `disable-async-timeout' to turn off
  1520. the timeout before it has been signalled.
  1521.  
  1522. NOTE: Id numbers as returned by this function are in a distinct namespace
  1523. from those returned by `add-timeout'.  This means that the same id number
  1524. could refer to a pending synchronous timeout and a different pending
  1525. asynchronous timeout, and that you cannot pass an id from
  1526. `add-async-timeout' to `disable-timeout', or vice-versa.
  1527.  
  1528. The number of seconds may be expressed as a floating-point number, in which
  1529. case some fractional part of a second will be used.  Caveat: the usable
  1530. timeout granularity will vary from system to system.
  1531.  
  1532. Adding an asynchronous timeout causes the function to be invoked as soon
  1533. as the timeout occurs, even if XEmacs is in the midst of executing some
  1534. other code. (This is unlike the synchronous timeouts added with
  1535. `add-timeout', where the timeout will only be signalled when XEmacs is
  1536. waiting for events, i.e. the next return to top-level or invocation of
  1537. `sit-for' or related functions.) This means that the function that is
  1538. called *must* not signal an error or change any global state (e.g. switch
  1539. buffers or windows) except when locking code is in place to make sure
  1540. that race conditions don't occur in the interaction between the
  1541. asynchronous timeout function and other code.
  1542.  
  1543. Under most circumstances, you should use `add-timeout' instead, as it is
  1544. much safer.  Asynchronous timeouts should only be used when such behavior
  1545. is really necessary.
  1546.  
  1547. Asynchronous timeouts are blocked and will not occur when `inhibit-quit'
  1548. is non-nil.  As soon as `inhibit-quit' becomes nil again, any pending
  1549. asynchronous timeouts will get called immediately. (Multiple occurrences
  1550. of the same asynchronous timeout are not queued, however.) While the
  1551. callback function of an asynchronous timeout is invoked, `inhibit-quit'
  1552. is automatically bound to non-nil, and thus other asynchronous timeouts
  1553. will be blocked unless the callback function explicitly sets `inhibit-quit'
  1554. to nil.
  1555.  
  1556. WARNING: if you are thinking of calling `add-async-timeout' from inside of a
  1557. callback function as a way of resignalling a timeout, think again.  There
  1558. is a race condition.  That's why the RESIGNAL argument exists.
  1559.  
  1560. arguments: (SECS FUNCTION OBJECT &optional RESIGNAL)
  1561. Fdisable-async-timeout
  1562. Disable an asynchronous timeout from signalling any more.
  1563. ID should be a timeout id number as returned by `add-async-timeout'.  If ID
  1564. corresponds to a one-shot timeout that has already signalled, nothing
  1565. will happen.
  1566.  
  1567. It will not work to call this function on an id number returned by
  1568. `add-timeout'.  Use `disable-timeout' for that.
  1569.  
  1570. arguments: (ID)
  1571. Fenqueue-eval-event
  1572. Add an eval event to the back of the eval event queue.
  1573. When this event is dispatched, FUNCTION (which should be a function
  1574. of one argument) will be called with OBJECT as its argument.
  1575. See `next-event' for a description of event types and how events
  1576. are received.
  1577.  
  1578. arguments: (FUNCTION OBJECT)
  1579. Femacs-handle-focus-change
  1580. internal function--don't call this.
  1581.  
  1582. arguments: (FRAME-INP-AND-DEV)
  1583. Fnext-event
  1584. Return the next available event.
  1585. Pass this object to `dispatch-event' to handle it.
  1586. In most cases, you will want to use `next-command-event', which returns
  1587. the next available "user" event (i.e. keypress, button-press,
  1588. button-release, or menu selection) instead of this function.
  1589.  
  1590. If EVENT is non-nil, it should be an event object and will be filled in
  1591. and returned; otherwise a new event object will be created and returned.
  1592. If PROMPT is non-nil, it should be a string and will be displayed in the
  1593. echo area while this function is waiting for an event.
  1594.  
  1595. The next available event will be
  1596.  
  1597. -- any events in `unread-command-events' or `unread-command-event'; else
  1598. -- the next event in the currently executing keyboard macro, if any; else
  1599. -- an event queued by `enqueue-eval-event', if any; else
  1600. -- the next available event from the window system or terminal driver.
  1601.  
  1602. In the last case, this function will block until an event is available.
  1603.  
  1604. The returned event will be one of the following types:
  1605.  
  1606. -- a key-press event.
  1607. -- a button-press or button-release event.
  1608. -- a misc-user-event, meaning the user selected an item on a menu or used
  1609.    the scrollbar.
  1610. -- a process event, meaning that output from a subprocess is available.
  1611. -- a timeout event, meaning that a timeout has elapsed.
  1612. -- an eval event, which simply causes a function to be executed when the
  1613.    event is dispatched.  Eval events are generated by `enqueue-eval-event'
  1614.    or by certain other conditions happening.
  1615. -- a magic event, indicating that some window-system-specific event
  1616.    happened (such as an focus-change notification) that must be handled
  1617.    synchronously with other events.  `dispatch-event' knows what to do with
  1618.    these events.
  1619.  
  1620. arguments: (&optional EVENT PROMPT)
  1621. Fnext-command-event
  1622. Return the next available "user" event.
  1623. Pass this object to `dispatch-event' to handle it.
  1624.  
  1625. If EVENT is non-nil, it should be an event object and will be filled in
  1626. and returned; otherwise a new event object will be created and returned.
  1627. If PROMPT is non-nil, it should be a string and will be displayed in the
  1628. echo area while this function is waiting for an event.
  1629.  
  1630. The event returned will be a keyboard, mouse press, or mouse release event.
  1631. If there are non-command events available (mouse motion, sub-process output,
  1632. etc) then these will be executed (with `dispatch-event') and discarded.  This
  1633. function is provided as a convenience; it is equivalent to the lisp code
  1634.  
  1635.     (while (progn
  1636.          (next-event event prompt)
  1637.              (not (or (key-press-event-p event)
  1638.                       (button-press-event-p event)
  1639.                       (button-release-event-p event)
  1640.                       (misc-user-event-p event))))
  1641.        (dispatch-event event))
  1642.  
  1643.  
  1644. arguments: (&optional EVENT PROMPT)
  1645. Fdiscard-input
  1646. Discard any pending "user" events.
  1647. Also cancel any kbd macro being defined.
  1648. A user event is a key press, button press, button release, or
  1649. "other-user" event (menu selection or scrollbar action).
  1650.  
  1651. arguments: ()
  1652. Faccept-process-output
  1653. Allow any pending output from subprocesses to be read by Emacs.
  1654. It is read into the process' buffers or given to their filter functions.
  1655. Non-nil arg PROCESS means do not return until some output has been received
  1656.  from PROCESS.
  1657. If the second arg is non-nil, it is the maximum number of seconds to wait:
  1658.  this function will return after that much time even if no input has arrived
  1659.  from PROCESS.  This argument may be a float, meaning wait some fractional
  1660.  part of a second.
  1661. If the third arg is non-nil, it is a number of milliseconds that is added
  1662.  to the second arg.  (This exists only for compatibility.)
  1663. Return non-nil iff we received any output before the timeout expired.
  1664.  
  1665. arguments: (&optional PROCESS TIMEOUT-SECS TIMEOUT-MSECS)
  1666. Fsleep-for
  1667. Pause, without updating display, for ARG seconds.
  1668. ARG may be a float, meaning pause for some fractional part of a second.
  1669.  
  1670. arguments: (SECONDS)
  1671. Fsit-for
  1672. Perform redisplay, then wait ARG seconds or until user input is available.
  1673. ARG may be a float, meaning a fractional part of a second.
  1674. Optional second arg non-nil means don't redisplay, just wait for input.
  1675. Redisplay is preempted as always if user input arrives, and does not
  1676. happen if input is available before it starts.
  1677. Value is t if waited the full time with no input arriving.
  1678.  
  1679. arguments: (SECONDS &optional NODISPLAY)
  1680. Frecent-keys
  1681. Return vector of last 100 or so keyboard or mouse button events read.
  1682. This copies the event objects into a new vector; it is safe to keep and
  1683. modify them.
  1684.  
  1685. arguments: ()
  1686. Fdispatch-event
  1687. Given an event object as returned by `next-event', execute it.
  1688.  
  1689. Key-press, button-press, and button-release events get accumulated
  1690. until a complete key sequence (see `read-key-sequence') is reached,
  1691. at which point the sequence is looked up in the current keymaps and
  1692. acted upon.
  1693.  
  1694. Mouse motion events cause the low-level handling function stored in
  1695. `mouse-motion-handler' to be called. (There are very few circumstances
  1696. under which you should change this handler.  Use `mode-motion-hook'
  1697. instead.)
  1698.  
  1699. Menu, timeout, and eval events cause the associated function or handler
  1700. to be called.
  1701.  
  1702. Process events cause the subprocess's output to be read and acted upon
  1703. appropriately (see `start-process').
  1704.  
  1705. Magic events are handled as necessary.
  1706.  
  1707. arguments: (EVENT)
  1708. Fread-key-sequence
  1709. Read a sequence of keystrokes or mouse clicks.
  1710. Returns a vector of the event objects read.  The vector and the event
  1711. objects it contains are freshly created (and will not be side-effected
  1712. by subsequent calls to this function).
  1713.  
  1714. The sequence read is sufficient to specify a non-prefix command starting
  1715. from the current local and global keymaps.  A C-g typed while in this
  1716. function is treated like any other character, and `quit-flag' is not set.
  1717.  
  1718. First arg PROMPT is a prompt string.  If nil, do not prompt specially.
  1719.  
  1720. If the user selects a menu item while we are prompting for a key-sequence,
  1721. the returned value will be a vector of a single menu-selection event.
  1722. An error will be signalled if you pass this value to `lookup-key' or a
  1723. related function.
  1724.  
  1725. arguments: (PROMPT)
  1726. Fthis-command-keys
  1727. Return a vector of the keyboard or mouse button events that were used
  1728. to invoke this command.  This copies the vector and the events; it is safe
  1729. to keep and modify them.
  1730.  
  1731. arguments: ()
  1732. Vecho-keystrokes
  1733. *Nonzero means echo unfinished commands after this many seconds of pause.Vauto-save-interval
  1734. *Number of keyboard input characters between auto-saves.
  1735. Zero means disable autosaving due to number of characters typed.
  1736. See also the variable `auto-save-timeout'.Vpre-command-hook
  1737. Function or functions to run before every command.
  1738. This may examine the `this-command' variable to find out what command
  1739. is about to be run, or may change it to cause a different command to run.
  1740. Function on this hook must be careful to avoid signalling errors!Vpost-command-hook
  1741. Function or functions to run after every command.
  1742. This may examine the `this-command' variable to find out what command
  1743. was just executed.Vlast-command-event
  1744. Last keyboard or mouse button event that was part of a command.  This
  1745. variable is off limits: you may not set its value or modify the event that
  1746. is its value, as it is destructively modified by `read-key-sequence'.  If
  1747. you want to keep a pointer to this value, you must use `copy-event'.Vlast-command-char
  1748. If the value of `last-command-event' is a keyboard event, then
  1749. this is the nearest ASCII equivalent to it.  This the the value that
  1750. `self-insert-command' will put in the buffer.  Remember that there is
  1751. NOT a 1:1 mapping between keyboard events and ASCII characters: the set
  1752. of keyboard events is much larger, so writing code that examines this
  1753. variable to determine what key has been typed is bad practice, unless
  1754. you are certain that it will be one of a small set of characters.Vlast-input-event
  1755. Last keyboard or mouse button event received.  This variable is off
  1756. limits: you may not set its value or modify the event that is its value, as
  1757. it is destructively modified by `next-event'.  If you want to keep a pointer
  1758. to this value, you must use `copy-event'.Vlast-input-char
  1759. If the value of `last-input-event' is a keyboard event, then
  1760. this is the nearest ASCII equivalent to it.  Remember that there is
  1761. NOT a 1:1 mapping between keyboard events and ASCII characters: the set
  1762. of keyboard events is much larger, so writing code that examines this
  1763. variable to determine what key has been typed is bad practice, unless
  1764. you are certain that it will be one of a small set of characters.Vlast-input-time
  1765. The time (in seconds since Jan 1, 1970) of the last-command-event,
  1766. represented as a cons of two 16-bit integers.  This is destructively
  1767. modified, so copy it if you want to keep it.Vunread-command-events
  1768. List of event objects to be read as next command input events.
  1769. This can be used to simulate the receipt of events from the user.
  1770. Normally this is nil.Vunread-command-event
  1771. Obsolete.  Use `unread-command-events' instead.Vlast-command
  1772. The last command executed.  Normally a symbol with a function definition,
  1773. but can be whatever was found in the keymap, or whatever the variable
  1774. `this-command' was set to by that command.Vthis-command
  1775. The command now being executed.
  1776. The command can set this variable; whatever is put here
  1777. will be in `last-command' during the following command.Vhelp-char
  1778. Character to recognize as meaning Help.
  1779. When it is read, do `(eval help-form)', and display result if it's a string.
  1780. If the value of `help-form' is nil, this char can be read normally.
  1781. This can be any form recognized as a single key specifier.
  1782. To disable the help-char, set it to a negative number.Vhelp-form
  1783. Form to execute when character help-char is read.
  1784. If the form returns a string, that string is displayed.
  1785. If `help-form' is nil, the help char is not recognized.Vprefix-help-command
  1786. Command to run when `help-char' character follows a prefix key.
  1787. This command is used only when there is no actual binding
  1788. for that character after that prefix key.Vkeyboard-translate-table
  1789. String used as translate table for keyboard input, or nil.
  1790. Each character is looked up in this string and the contents used instead.
  1791. If string is of length N, character codes N and up are untranslated.
  1792. This is the right thing to use only if you are on a dumb tty, as it cannot
  1793. handle input which cannot be represented as ASCII.  If you are running emacs
  1794. under X, you should do the translations with the `xmodmap' program instead.Vretry-undefined-key-binding-unshifted
  1795. If a key-sequence which ends with a shifted keystroke is undefined
  1796. and this variable is non-nil then the command lookup is retried again
  1797. with the last key unshifted.  (e.g. C-X C-F would be retried as C-X C-f.)
  1798. If lookup still fails, a normal error is signalled.Vlocal-pre-command-hook
  1799. Buffer-local function or functions to run before every command.
  1800. This variable is local to each buffer (see also `pre-command-hook').
  1801. This may examine the `this-command' variable to find out what command
  1802. is about to be run, or may change it to cause a different command to run.
  1803. Function on this hook must be careful to avoid signalling errors!Vlocal-post-command-hook
  1804. Buffer-local function or functions to run after every command.
  1805. This variable is local to each buffer (see also `post-command-hook').
  1806. This may examine the `this-command' variable to find out what command
  1807. was just executed.Fstreamp
  1808. Return non-nil if OBJECT is a stream.
  1809.  
  1810. arguments: (OBJECT)
  1811. Fx-set-frame-icon-pixmap
  1812. Set the icon of the given frame to the given image instance,
  1813. which should be an image instance object (as returned by
  1814. `make-image-instance'), a glyph object (as returned by `make-glyph'),
  1815. or nil.  If a glyph object is given, the glyph will be instantiated on
  1816. the frame to produce an image instance object.
  1817.  
  1818. If the given image instance has a mask, that will be used as the icon mask;
  1819. however, not all window managers support this.
  1820.  
  1821. The window manager is also not required to support color pixmaps,
  1822. only bitmaps (one plane deep).
  1823.  
  1824. If the image instance does not have a mask, then the optional
  1825. third argument may be the image instance to use as the mask (it must be
  1826. one plane deep).
  1827.  
  1828. arguments: (FRAME IMAGE-INSTANCE &optional MASK)
  1829. Fx-set-frame-pointer
  1830. Set the mouse cursor of FRAME to the given cursor,
  1831. which should be an object returned by `make-cursor'.
  1832.  
  1833. arguments: (FRAME CURSOR)
  1834. Fx-set-scrollbar-pointer
  1835. Set the mouse cursor of the scrollbars on FRAME to the given
  1836. cursor, which should be an object returned by `make-cursor'.
  1837.  
  1838. arguments: (FRAME CURSOR)
  1839. Fx-window-id
  1840. Get the ID of the X11 window.
  1841. This gives us a chance to manipulate the Emacs window from within a
  1842. different program.  Since the ID is an unsigned long, we return it as
  1843. a string.
  1844.  
  1845. arguments: (&optional FRAME)
  1846. Vx-gc-pointer-shape
  1847. The shape of the mouse-pointer during garbage collection.
  1848. If this is nil, then the cursor will not be changed, and echo-area messages
  1849. will be used instead.Vx-scrollbar-pointer-shape
  1850. Currently under construction.  Use `x-set-scrollbar-pointer' instead.Vdefault-x-frame-alist
  1851. Alist of default frame-creation parameters for X frames.
  1852. These override what is specified in the resource database and in
  1853. `default-frame-alist', but are overridden by the arguments to the
  1854. particular call to `make-frame'.
  1855.  
  1856. Note: frame parameters are pretty much out-of-fashion.  Using
  1857. the functions `modify-frame-parameters' and `frame-parameters' is
  1858. definitely out-of-fashion, and soon these functions will be made
  1859. obsolete.  Most uses of the frame parameters below can be replaced
  1860. more flexibly with uses of a specifier, and soon, all frame parameters
  1861. will have specifier equivalents.
  1862.  
  1863. Here is a list of recognized frame parameters (they can be queried and
  1864. set at any time, except as otherwise noted):
  1865.  
  1866.   window-id            The X window ID corresponding to the
  1867.                 frame.  May be set only at startup, and
  1868.                 only if external widget support was
  1869.                 compiled in; doing so causes the frame
  1870.                 to be created as an "external widget"
  1871.                 in another program that uses an existing
  1872.                 window in the program rather than creating
  1873.                 a new one.
  1874.   initially-unmapped        If non-nil, the frame will not be visible
  1875.                 when it is created.  In this case, you
  1876.                 need to call `make-frame-visible' to make
  1877.                 the frame appear.
  1878.   popup                If non-nil, it should be a frame, and this
  1879.                 frame will be created as a "popup" frame
  1880.                 whose parent is the given frame.  This
  1881.                 will make the window manager treat the
  1882.                 frame as a dialog box, which may entail
  1883.                 doing different things (e.g. not asking
  1884.                 for positioning, and not iconifying
  1885.                 separate from its parent).
  1886.   inter-line-space        Not currently implemented.
  1887.   toolbar-shadow-thickness    Thickness of toolbar shadows.
  1888.   background-toolbar-color    Color of toolbar background.
  1889.   bottom-toolbar-shadow-color    Color of bottom shadows on toolbars.
  1890.                 (*Not* specific to the bottom-toolbar.)
  1891.   top-toolbar-shadow-color    Color of top shadows on toolbars.
  1892.                 (*Not* specifier to the top-toolbar.)
  1893.   scrollbar-height        Going to be removed.
  1894.   internal-border-width        Width of internal border around text area.
  1895.   border-width            Width of external border around text area.
  1896.   top                Y position (in pixels) of the upper-left
  1897.                 outermost corner of the frame (i.e. the
  1898.                 upper-left of the window-manager
  1899.                 decorations).
  1900.   left                X position (in pixels) of the upper-left
  1901.                 outermost corner of the frame (i.e. the
  1902.                 upper-left of the window-manager
  1903.                 decorations).
  1904.   border-color            Color of external border around text area.
  1905.   cursor-color            Color of text cursor.
  1906.   unsplittable            Not currently implemented.
  1907.   minibuffer            Not currently implemented.
  1908.   width                See `default-frame-alist'.
  1909.   height            See `default-frame-alist'.
  1910.   name                See `default-frame-alist'.
  1911.   scrollbar-pointer        Doesn't really work.
  1912.   pointer            Doesn't really work.
  1913.  
  1914. See also `default-frame-alist', which specifies parameters which apply
  1915. to all frames, not just X frames.Fx-selection-reply-timeout-internal
  1916.  
  1917.  
  1918. arguments: (ARG)
  1919. Fx-own-selection-internal
  1920. Assert an X selection of the given TYPE with the given VALUE.
  1921. TYPE is a symbol, typically PRIMARY, SECONDARY, or CLIPBOARD.
  1922. VALUE is typically a string, or a cons of two markers, but may be
  1923. anything that the functions on selection-converter-alist know about.
  1924.  
  1925. arguments: (SELECTION-NAME SELECTION-VALUE)
  1926. Fx-get-selection-internal
  1927. Return text selected from some X window.
  1928. SELECTION is a symbol, typically PRIMARY, SECONDARY, or CLIPBOARD.
  1929. TYPE is the type of data desired, typically STRING.
  1930.  
  1931. arguments: (SELECTION-SYMBOL TARGET-TYPE)
  1932. Fx-disown-selection-internal
  1933. If we own the named selection, then disown it (make there be no selection).
  1934.  
  1935. arguments: (SELECTION &optional TIME)
  1936. Fx-selection-owner-p
  1937. Whether the current emacs process owns the given X Selection.
  1938. The arg should be the name of the selection in question, typically one of
  1939. the symbols PRIMARY, SECONDARY, or CLIPBOARD.  (For convenience, the symbol
  1940. nil is the same as PRIMARY, and t is the same as SECONDARY.)
  1941.  
  1942. arguments: (&optional SELECTION)
  1943. Fx-selection-exists-p
  1944. Whether there is an owner for the given X Selection.
  1945. The arg should be the name of the selection in question, typically one of
  1946. the symbols PRIMARY, SECONDARY, or CLIPBOARD.  (For convenience, the symbol
  1947. nil is the same as PRIMARY, and t is the same as SECONDARY.)
  1948.  
  1949. arguments: (&optional SELECTION)
  1950. Fx-get-cutbuffer-internal
  1951. Return the value of the named cutbuffer (typically CUT_BUFFER0).
  1952.  
  1953. arguments: (BUFFER)
  1954. Fx-store-cutbuffer-internal
  1955. Sets the value of the named cutbuffer (typically CUT_BUFFER0).
  1956.  
  1957. arguments: (BUFFER STRING)
  1958. Fx-rotate-cutbuffers-internal
  1959. Rotate the values of the cutbuffers by the given number of steps;
  1960. positive means move values forward, negative means backward.
  1961.  
  1962. arguments: (N)
  1963. Vselection-converter-alist
  1964. An alist associating selection-types (such as STRING and TIMESTAMP) with
  1965. functions.  These functions will be called with three args: the name of the
  1966. selection (typically PRIMARY, SECONDARY, or CLIPBOARD); a desired type to
  1967. which the selection should be converted; and the local selection value
  1968. (whatever had been passed to `x-own-selection').  These functions should
  1969. return the value to send to the X server (typically a string).  A return
  1970. value of nil means that the conversion could not be done.  A return value
  1971. which is the symbol NULL means that a side-effect was executed, and there
  1972. is no meaningful return value.Vx-lost-selection-hooks
  1973. A function or functions to be called after the X server has notified us
  1974. that we have lost the selection.  The function(s) will be called with one
  1975. argument, a symbol naming the selection (typically PRIMARY, SECONDARY, or
  1976. CLIPBOARD).Vx-sent-selection-hooks
  1977. A function or functions to be called after we have responded to some
  1978. other client's request for the value of a selection that we own.  The
  1979. function(s) will be called with four arguments:
  1980.   - the name of the selection (typically PRIMARY, SECONDARY, or CLIPBOARD);
  1981.   - the name of the selection-type which we were requested to convert the
  1982.     selection into before sending (for example, STRING or LENGTH);
  1983.   - and whether we successfully transmitted the selection.
  1984. We might have failed (and declined the request) for any number of reasons,
  1985. including being asked for a selection that we no longer own, or being asked
  1986. to convert into a type that we don't know about or that is inappropriate.
  1987. This hook doesn't let you change the behavior of emacs's selection replies,
  1988. it merely informs you that they have happened.Vx-selection-timeout
  1989. If the selection owner doesn't reply in this many seconds, we give up.
  1990. A value of 0 means wait as long as necessary.  This is initialized from the
  1991. "*selectionTimeout" resource (which is expressed in milliseconds).Vmodifier-keys-are-sticky
  1992. *Non-nil makes modifier keys sticky.
  1993. This means that you can release the modifier key before pressing down
  1994. the key that you wish to be modified.  Although this is non-standard
  1995. behavior, it is recommended because it reduces the strain on your hand,
  1996. thus reducing the incidence of the dreaded Emacs-pinky syndrome.Vx-allow-sendevents
  1997. *Non-nil means to allow synthetic events.  Nil means they are ignored.
  1998. Beware: allowing emacs to process SendEvents opens a big security hole.Vx-debug-events
  1999. If non-zero, display debug information about events that XEmacs sees.
  2000. Information is displayed on stderr.  Currently defined values are:
  2001.  
  2002. 1 == non-verbose output
  2003. 2 == verbose outputFpopup-menu
  2004. Pop up the given menu.
  2005. A menu description is a list of menu items, strings, and submenus.
  2006.  
  2007. The first element of a menu must be a string, which is the name of the menu.
  2008. This is the string that will be displayed in the parent menu, if any.  For
  2009. toplevel menus, it is ignored.  This string is not displayed in the menu
  2010. itself.
  2011.  
  2012. If an element of a menu is a string, then that string will be presented in
  2013. the menu as unselectable text.
  2014.  
  2015. If an element of a menu is a string consisting solely of hyphens, then that
  2016. item will be presented as a solid horizontal line.
  2017.  
  2018. If an element of a menu is a list, it is treated as a submenu.  The name of
  2019. that submenu (the first element in the list) will be used as the name of the
  2020. item representing this menu on the parent.
  2021.  
  2022. Otherwise, the element must be a vector, which describes a menu item.
  2023. A menu item can have any of the following forms:
  2024.  
  2025.  [ "name" callback <active-p> ]
  2026.  [ "name" callback <active-p> "suffix" ]
  2027.  [ "name" callback :<keyword> <value>  :<keyword> <value> ... ]
  2028.  
  2029. The name is the string to display on the menu; it is filtered through the
  2030. resource database, so it is possible for resources to override what string
  2031. is actually displayed.
  2032.  
  2033. If the `callback' of a menu item is a symbol, then it must name a command.
  2034. It will be invoked with `call-interactively'.  If it is a list, then it is
  2035. evaluated with `eval'.
  2036.  
  2037. The possible keywords are this:
  2038.  
  2039.  :active   <form>    Same as <active-p> in the first two forms: the
  2040.                      expression is evaluated just before the menu is
  2041.                      displayed, and the menu will be selectable only if
  2042.                      the result is non-nil.
  2043.  
  2044.  :suffix   "string"  Same as "suffix" in the second form: the suffix is
  2045.                      appended to the displayed name, providing a convenient
  2046.                      way of adding the name of a command's ``argument'' to
  2047.                      the menu, like ``Kill Buffer NAME''.
  2048.  
  2049.  :keys     "string"  Normally, the keyboard equivalents of commands in
  2050.                      menus are displayed when the `callback' is a symbol.
  2051.                      This can be used to specify keys for more complex menu
  2052.                      items.  It is passed through `substitute-command-keys'
  2053.                      first.
  2054.  
  2055.  :style    <style>   Specifies what kind of object this menu item is:
  2056.  
  2057.                         nil     A normal menu item.
  2058.                         toggle  A toggle button.
  2059.                         radio   A radio button.
  2060.  
  2061.                      The only difference between toggle and radio buttons is
  2062.                      how they are displayed.  But for consistency, a toggle
  2063.                      button should be used when there is one option whose
  2064.                      value can be turned on or off, and radio buttons should
  2065.                      be used when there is a set of mutally exclusive
  2066.                      options.  When using a group of radio buttons, you
  2067.                      should arrange for no more than one to be marked as
  2068.                      selected at a time.
  2069.  
  2070.  :selected <form>    Meaningful only when STYLE is `toggle' or `radio'.
  2071.                      This specifies whether the button will be in the
  2072.                      selected or unselected state.
  2073.  
  2074. For example:
  2075.  
  2076.  [ "Save As..."    write-file  t ]
  2077.  [ "Revert Buffer" revert-buffer (buffer-modified-p) ]
  2078.  [ "Read Only"     toggle-read-only :style toggle :selected buffer-read-only ]
  2079.  
  2080. See menubar.el for many more examples.
  2081.  
  2082. arguments: (MENU-DESC &optional EVENT)
  2083. Fpopup-menu-up-p
  2084. Return t if a popup menu is up, nil otherwise.
  2085. See `popup-menu'.
  2086.  
  2087. arguments: ()
  2088. Fpopup-dialog-box
  2089. Pop up a dialog box.
  2090. A dialog box description is a list.
  2091.  
  2092. The first element of a dialog box must be a string, which is the title or
  2093. question.
  2094.  
  2095. The rest of the elements are descriptions of the dialog box's buttons.
  2096. Each of these is a vector, the syntax of which is essentially the same as
  2097. that of popup menu items.  They may have any of the following forms:
  2098.  
  2099.  [ "name" callback <active-p> ]
  2100.  [ "name" callback <active-p> "suffix" ]
  2101.  [ "name" callback :<keyword> <value>  :<keyword> <value> ... ]
  2102.  
  2103. The name is the string to display on the button; it is filtered through the
  2104. resource database, so it is possible for resources to override what string
  2105. is actually displayed.
  2106.  
  2107. If the `callback' of a button is a symbol, then it must name a command.
  2108. It will be invoked with `call-interactively'.  If it is a list, then it is
  2109. evaluated with `eval'.
  2110.  
  2111. One (and only one) of the buttons may be `nil'.  This marker means that all
  2112. following buttons should be flushright instead of flushleft.
  2113.  
  2114. Though the keyword/value syntax is supported for dialog boxes just as in 
  2115. popup menus, the only keyword which is both meaningful and fully implemented
  2116. for dialog box buttons is `:active'.
  2117.  
  2118. arguments: (DBOX-DESC)
  2119. Vpopup-menu-titles
  2120. If true, popup menus will have title bars at the top.Fx-resource-p
  2121. Return non-nil if OBJECT is an X resource object.
  2122.  
  2123. arguments: (OBJECT)
  2124. Fx-set-x-resource-type
  2125. Set the type of RESOURE to TYPE.  The new type must be an atom.
  2126.  
  2127. arguments: (RESOURCE TYPE)
  2128. Vx-handle-non-fully-specified-fonts
  2129. If this is true then fonts which do not have all characters specified
  2130. will be considered to be proportional width even if they are actually
  2131. fixed-width.  If this is not done then characters which are supposed to
  2132. have 0 width may appear to actually have some width.
  2133.  
  2134. Note:  While setting this to t guarantees correct output in all
  2135. circumstances, it also causes a noticeable performance hit when using
  2136. fixed-width fonts.  Since most people don't use characters which could
  2137. cause problems this is set to nil by default.Fcolorize-image-instance
  2138. Make the image instance be displayed in the given colors.
  2139. Image instances come in two varieties: bitmaps, which are 1 bit deep which
  2140. are rendered in the prevailing foreground and background colors; and
  2141. pixmaps, which are of arbitrary depth (including 1) and which have the
  2142. colors explicitly specified.  This function converts a bitmap to a pixmap.
  2143. If the image instance was a pixmap already, nothing is done (and nil is
  2144. returned).  Otherwise t is returned.
  2145.  
  2146. arguments: (IMAGE-INSTANCE FOREGROUND BACKGROUND)
  2147. Fmake-cursor
  2148. Creates a new `cursor' object of the specified name.
  2149. The optional second and third arguments are the foreground and background
  2150.  colors.  They may be color name strings or `pixel' objects.
  2151. The optional fourth argument is the device on which to allocate the cursor
  2152.  (defaults to the selected device).
  2153. This allocates a new cursor in the X server, and signals an error if the
  2154.  cursor is unknown or cannot be allocated.
  2155.  
  2156. A cursor name can take many different forms.  It can be:
  2157.  - any of the standard cursor names from appendix B of the Xlib manual
  2158.    (also known as the file <X11/cursorfont.h>) minus the XC_ prefix;
  2159.  - the name of a font, and glyph index into it of the form
  2160.    "FONT fontname index [[mask-font] mask-index]";
  2161.  - the name of a bitmap or pixmap file;
  2162.  - or an image instance object, as returned by `make-image-instance'.
  2163.  
  2164. If it is an image instance or pixmap file, and that pixmap comes with a
  2165.  mask, then that mask will be used.  If it is an image instance, it must
  2166.  have only one plane, since X cursors may only have two colors.  If it is a
  2167.  pixmap file, then the file will be read in monochrome.
  2168.  
  2169. If it is a bitmap file, and if a bitmap file whose name is the name of the
  2170.  cursor with "msk" or "Mask" appended exists, then that second bitmap
  2171.  will be used as the mask.  For example, a pair of files might be named
  2172.  "cursor.xbm" and "cursor.xbmmsk".
  2173.  
  2174. The returned object is a normal, first-class lisp object.  The way you
  2175. `deallocate' the cursor is the way you deallocate any other lisp object:
  2176. you drop all pointers to it and allow it to be garbage collected.  When
  2177. these objects are GCed, the underlying X data is deallocated as well.
  2178.  
  2179. arguments: (NAME &optional FG BG DEVICE)
  2180. Fcursorp
  2181. Return non-nil if OBJECT is a cursor.
  2182.  
  2183. arguments: (OBJECT)
  2184. Fcursor-name
  2185. Return the name used to allocate the given cursor.
  2186.  
  2187. arguments: (CURSOR)
  2188. Fcursor-foreground
  2189. Return the foreground color of the given cursor, or nil if unspecified.
  2190.  
  2191. arguments: (CURSOR)
  2192. Fcursor-background
  2193. Return the background color of the given cursor, or nil if unspecified.
  2194.  
  2195. arguments: (CURSOR)
  2196. Fmake-subwindow
  2197. Creates a new `x-window' object of size WIDTH x HEIGHT.
  2198. The default is a window of size 1x1, which is also the minimum allowed
  2199. window size.  Subwindows are per-frame.  A buffer being shown in two
  2200. different frames will only display a subwindow glyph in the frame in
  2201. which it was actually created.  If two windows on the same frame are
  2202. displaying the buffer then the most recently used window will actually
  2203. display the window.  If the frame is not specified, the selected frame
  2204. is used.
  2205.  
  2206. arguments: (&optional WIDTH HEIGHT FRAME)
  2207. Fchange-subwindow-property
  2208. For the given SUBWINDOW, set PROPERTY to DATA, which is a string.
  2209.  
  2210. arguments: (SUBWINDOW PROPERTY DATA)
  2211. Fsubwindowp
  2212. Return non-nil if OBJECT is a subwindow.
  2213.  
  2214. arguments: (OBJECT)
  2215. Fsubwindow-width
  2216. Width of SUBWINDOW.
  2217.  
  2218. arguments: (SUBWINDOW)
  2219. Fsubwindow-height
  2220. Height of SUBWINDOW.
  2221.  
  2222. arguments: (SUBWINDOW)
  2223. Fsubwindow-xid
  2224. Return the xid of SUBWINDOW as a number.
  2225.  
  2226. arguments: (SUBWINDOW)
  2227. Fresize-subwindow
  2228. Resize SUBWINDOW to WIDTH x HEIGHT.
  2229. If a value is nil that parameter is not changed.
  2230.  
  2231. arguments: (SUBWINDOW &optional WIDTH HEIGHT)
  2232. Fforce-subwindow-map
  2233. Generate a Map event for SUBWINDOW.
  2234.  
  2235. arguments: (SUBWINDOW)
  2236. Vxpm-color-symbols
  2237. Definitions of logical color-names used when reading XPM files.
  2238. Elements of this list should be of the form (COLOR-NAME FORM-TO-EVALUATE).
  2239. The COLOR-NAME should be a string, which is the name of the color to define;
  2240. the FORM should evaluate to a `color' specifier object, or a string to be
  2241. passed to `make-color-instance'.  If a loaded XPM file references a symbolic
  2242. color called COLOR-NAME, it will display as the computed color instead.
  2243.  
  2244. The default value of this variable defines the logical color names
  2245. "foreground" and "background" to be the colors of the `default' face.Vx-bitmap-file-path
  2246. A list of the directories in which X bitmap files may be found.
  2247. If nil, this is initialized from the "*bitmapFilePath" resource.
  2248. This is used by the `make-image-instance' function (however, note that if
  2249. the environment variable XBMLANGPATH is set, it is consulted first).Finvocation-name
  2250. Return the program name that was used to run XEmacs.
  2251. Any directory names are omitted.
  2252.  
  2253. arguments: ()
  2254. Frun-emacs-from-temacs
  2255. Do not call this.  It will reinitialize your XEmacs.  You'll be sorry.Fkill-emacs
  2256. Exit the XEmacs job and kill it.  Ask for confirmation, without argument.
  2257. If ARG is an integer, return ARG as the exit program code.
  2258. If ARG is a  string, stuff it as keyboard input.
  2259.  
  2260. The value of `kill-emacs-hook', if not void,
  2261. is a list of functions (of no args),
  2262. all of which are called before XEmacs is actually killed.
  2263.  
  2264. arguments: (&optional ARG)
  2265. Fdump-emacs-data
  2266. Dump current state of XEmacs into data file FILENAME.
  2267. This function exists on systems that use HAVE_SHM.
  2268.  
  2269. arguments: (INTONAME)
  2270. Fdump-emacs
  2271. Dump current state of XEmacs into executable file FILENAME.
  2272. Take symbols from SYMFILE (presumably the file you executed to run XEmacs).
  2273. This is used in the file `loadup.el' when building XEmacs.
  2274.  
  2275. Remember to set `command-line-processed' to nil before dumping
  2276. if you want the dumped XEmacs to process its command line
  2277. and announce itself normally when it is run.
  2278.  
  2279. arguments: (INTONAME SYMNAME)
  2280. Fnoninteractive
  2281. Non-nil return value means XEmacs is running without interactive terminal.
  2282.  
  2283. arguments: ()
  2284. Vsuppress-early-error-handler-backtrace
  2285. Non-nil means early error handler shouldn't print a backtraceVcommand-line-args
  2286. Args passed by shell to XEmacs, as a list of strings.Vinvocation-name
  2287. The program name that was used to run XEmacs.
  2288. Any directory names are omitted.Vinvocation-directory
  2289. The directory in which the XEmacs executable was found, to run it.
  2290. The value is simply the program name if that directory's name is not known.Vsystem-type
  2291. Value is symbol indicating type of operating system you are using.Vsystem-configuration
  2292. Value is string indicating configuration XEmacs was built for.Vnoninteractive
  2293. Non-nil means XEmacs is running without interactive terminal.Vemacs-priority
  2294. Priority for XEmacs to run at.
  2295. This value is effective only if set before XEmacs is dumped,
  2296. and only if the XEmacs executable is installed with setuid to permit
  2297. it to change priority.  (XEmacs sets its uid back to the real uid.)
  2298. Currently, you need to define SET_EMACS_PRIORITY in `config.h'
  2299. before you compile XEmacs, to enable the code for this feature.Freally-early-error-handler
  2300. You should almost certainly not be using this.
  2301.  
  2302. arguments: (X)
  2303. Frecursive-edit
  2304. Invoke the editor command loop recursively.
  2305. To get out of the recursive edit, a command can do `(throw 'exit nil)';
  2306. that tells this function to return.
  2307. Alternately, `(throw 'exit t)' makes this function signal an error.
  2308.  
  2309. arguments: ()
  2310. Fcommand-loop-1
  2311. Invoke the internals of the canonical editor command loop.
  2312. Don't call this unless you know what you're doing.
  2313.  
  2314. arguments: ()
  2315. Fopen-dribble-file
  2316. Start writing all keyboard characters to FILE.
  2317.  
  2318. arguments: (FILE)
  2319. Fsuspend-emacs
  2320. Stop Emacs and return to superior process.  You can resume later.
  2321. On systems that don't have job control, run a subshell instead.
  2322.  
  2323. If optional arg STUFFSTRING is non-nil, its characters are stuffed
  2324. to be read as terminal input by Emacs's superior shell.
  2325. Before suspending, if `suspend-hook' is bound and value is non-nil
  2326. call the value as a function of no args.  Don't suspend if it returns non-nil.
  2327. Otherwise, suspend normally and after resumption call
  2328. `suspend-resume-hook' if that is bound and non-nil.
  2329.  
  2330. Some operating systems cannot stop the Emacs process and resume it later.
  2331. On such systems, Emacs will start a subshell and wait for it to exit.
  2332.  
  2333. arguments: (&optional STUFFSTRING)
  2334. Fset-input-mode
  2335. Set mode of reading keyboard input.
  2336. First arg is ignored, for backward compatibility.
  2337. Second arg FLOW non-nil means use ^S/^Q flow control for output to terminal
  2338.  (no effect except in CBREAK mode).
  2339. Third arg META t means accept 8-bit input (for a Meta key).
  2340.  META nil means ignore the top bit, on the assumption it is parity.
  2341.  Otherwise, accept 8-bit input and don't use the top bit for Meta.
  2342. First three arguments only apply to TTY devices.
  2343. Optional fourth arg QUIT if non-nil specifies character to use for quitting.
  2344. Optional fifth arg DEVICE specifies device to make changes to; nil means
  2345.  the current device.
  2346. See also `current-input-mode'.
  2347.  
  2348. arguments: (IGNORED FLOW META &optional QUIT DEVICE)
  2349. Fcurrent-input-mode
  2350. Return information about the way Emacs currently reads keyboard input.
  2351. Optional arg DEVICE specifies device to return information about; nil means
  2352.  the current device.
  2353. The value is a list of the form (nil FLOW META QUIT), where
  2354.   FLOW is non-nil if Emacs uses ^S/^Q flow control for output to the
  2355.     terminal; this does not apply if Emacs uses interrupt-driven input.
  2356.   META is t if accepting 8-bit input with 8th bit as Meta flag.
  2357.     META nil means ignoring the top bit, on the assumption it is parity.
  2358.     META is neither t nor nil if accepting 8-bit input and using
  2359.     all 8 bits as the character code.
  2360.   QUIT is the character Emacs currently uses to quit.
  2361. FLOW, and META are only meaningful for TTY devices.
  2362. The elements of this list correspond to the arguments of
  2363. `set-input-mode'.
  2364.  
  2365. arguments: (&optional DEVICE)
  2366. Vcommand-loop-level
  2367. Number of recursive edits in progress.Vdisabled-command-hook
  2368. Value is called instead of any command that is disabled,
  2369. i.e. has a non-nil `disabled' property.Vtop-level
  2370. Form to evaluate when Emacs starts up.
  2371. Useful to set before you dump a modified Emacs.Vcommand-loop
  2372. Function or one argument to call to read and process keyboard commands.
  2373. The passed argument specifies whether or not to handle errors.Fstart-kbd-macro
  2374. Record subsequent keyboard and menu input, defining a keyboard macro.
  2375. The commands are recorded even as they are executed.
  2376. Use \[end-kbd-macro] to finish recording and make the macro available.
  2377. Use \[name-last-kbd-macro] to give it a permanent name.
  2378. Non-nil arg (prefix arg) means append to last macro defined;
  2379.  This begins by re-executing that macro as if you typed it again.
  2380.  
  2381. arguments: (APPEND)
  2382. Fend-kbd-macro
  2383. Finish defining a keyboard macro.
  2384. The definition was started by \[start-kbd-macro].
  2385. The macro is now available for use via \[call-last-kbd-macro],
  2386. or it can be given a name with \[name-last-kbd-macro] and then invoked
  2387. under that name.
  2388.  
  2389. With numeric arg, repeat macro now that many times,
  2390. counting the definition just completed as the first repetition.
  2391. An argument of zero means repeat until error.
  2392.  
  2393. arguments: (&optional ARG)
  2394. Fcall-last-kbd-macro
  2395. Call the last keyboard macro that you defined with \[start-kbd-macro].
  2396.  
  2397. A prefix argument serves as a repeat count.  Zero means repeat until error.
  2398.  
  2399. To make a macro permanent so you can call it even after
  2400. defining others, use \[name-last-kbd-macro].
  2401.  
  2402. arguments: (&optional PREFIX)
  2403. Fexecute-kbd-macro
  2404. Execute MACRO as string of editor command characters.
  2405. If MACRO is a symbol, its function definition is used.
  2406. COUNT is a repeat count, or nil for once, or 0 for infinite loop.
  2407.  
  2408. arguments: (MACRO &optional PREFIXARG)
  2409. Vdefining-kbd-macro
  2410. Non-nil while a keyboard macro is being defined.  Don't set this!Vexecuting-macro
  2411. Currently executing keyboard macro (a vector of events);
  2412. nil if none executing.Vexecuting-kbd-macro
  2413. Currently executing keyboard macro (a vector of events);
  2414. nil if none executing.Vlast-kbd-macro
  2415. Last kbd macro defined, as a vector of events; nil if none defined.Fmake-keymap
  2416. Construct and return a new keymap object.
  2417. All entries in it are nil, meaning "command undefined".
  2418.  
  2419. arguments: ()
  2420. Fmake-sparse-keymap
  2421. Construct and return a new keymap object.
  2422. All entries in it are nil, meaning "command undefined".  The only
  2423. difference between this function and make-keymap is that this function
  2424. returns a "smaller" keymap (one that is expected to contain fewer
  2425. entries).  As keymaps dynamically resize, the distinction is not great.
  2426.  
  2427. arguments: ()
  2428. Fkeymap-parents
  2429. Return the `parent' keymaps of the given keymap, or nil.
  2430. The parents of a keymap are searched for keybindings when a key sequence
  2431. isn't bound in this one.  `(current-global-map)' is the default parent
  2432. of all keymaps.
  2433.  
  2434. arguments: (KEYMAP)
  2435. Fset-keymap-parents
  2436. Sets the `parent' keymaps of the given keymap.
  2437. The parents of a keymap are searched for keybindings when a key sequence
  2438. isn't bound in this one.  `(current-global-map)' is the default parent
  2439. of all keymaps.
  2440.  
  2441. arguments: (KEYMAP PARENTS)
  2442. Fset-keymap-name
  2443. Sets the `name' of the KEYMAP to NEW-NAME
  2444. The name is only a debugging convenience; it is not used except
  2445. when printing the keymap.
  2446.  
  2447. arguments: (KEYMAP NEW-NAME)
  2448. Fset-keymap-prompt
  2449. Sets the `prompt' of KEYMAP to string NEW-PROMPT, or `nil'
  2450. if no prompt is desired.  The prompt is shown in the echo-area
  2451. when reading a key-sequence to be looked-up in this keymap.
  2452.  
  2453. arguments: (KEYMAP NEW-PROMPT)
  2454. Fkeymap-prompt
  2455. Return the `prompt' of the given keymap.
  2456. If non-nil, the prompt is shown in the echo-area
  2457. when reading a key-sequence to be looked-up in this keymap.
  2458.  
  2459. arguments: (KEYMAP &optional USE-INHERITED)
  2460. Fset-keymap-default-binding
  2461. Sets the default binding of KEYMAP to COMMAND, or `nil'
  2462. if no default is desired.  The default-binding is returned when
  2463. no other binding for a key-sequence is found in the keymap.
  2464. If a keymap has a non-nil default-binding, neither the keymap's
  2465. parents nor the current global map are searched for key bindings.
  2466.  
  2467. arguments: (KEYMAP COMMAND)
  2468. Fkeymap-default-binding
  2469. Return the default binding of KEYMAP, or `nil' if it has none.
  2470. The default-binding is returned when no other binding for a key-sequence
  2471. is found in the keymap.
  2472. If a keymap has a non-nil default-binding, neither the keymap's
  2473. parents nor the current global map are searched for key bindings.
  2474.  
  2475. arguments: (KEYMAP)
  2476. Fkeymapp
  2477. Return t if ARG is a keymap object.
  2478. The keymap may be autoloaded first if necessary.
  2479.  
  2480. arguments: (OBJECT)
  2481. Fcopy-keymap
  2482. Return a copy of the keymap KEYMAP.
  2483. The copy starts out with the same definitions of KEYMAP,
  2484. but changing either the copy or KEYMAP does not affect the other.
  2485. Any key definitions that are subkeymaps are recursively copied.
  2486.  
  2487. arguments: (KEYMAP)
  2488. Fkeymap-fullness
  2489. Return the number of bindings in the keymap.
  2490.  
  2491. arguments: (KEYMAP)
  2492. Fevent-matches-key-specifier-p
  2493. Return non-nil if EVENT matches KEY-SPECIFIER.
  2494. This can be useful, e.g., to determine if the user pressed `help-char' or
  2495. `quit-char'.
  2496.  
  2497. arguments: (EVENT KEY-SPECIFIER)
  2498. Fdefine-key
  2499. Define key sequence KEYS, in KEYMAP, as DEF.
  2500. KEYMAP is a keymap object.
  2501. KEYS is the sequence of keystrokes to bind, described below.
  2502. DEF is anything that can be a key's definition:
  2503.  nil (means key is undefined in this keymap);
  2504.  a command (a Lisp function suitable for interactive calling);
  2505.  a string or key sequence vector (treated as a keyboard macro);
  2506.  a keymap (to define a prefix key);
  2507.  a symbol; when the key is looked up, the symbol will stand for its
  2508.     function definition, that should at that time be one of the above,
  2509.     or another symbol whose function definition is used, and so on.
  2510.  a cons (STRING . DEFN), meaning that DEFN is the definition
  2511.     (DEFN should be a valid definition in its own right);
  2512.  or a cons (KEYMAP . CHAR), meaning use definition of CHAR in map KEYMAP.
  2513.  
  2514. Contrary to popular belief, the world is not ASCII.  When running under a
  2515. window manager, Emacs can tell the difference between, for example, the
  2516. keystrokes control-h, control-shift-h, and backspace.  You can, in fact,
  2517. bind different commands to each of these.
  2518.  
  2519. A `key sequence' is a set of keystrokes.  A `keystroke' is a keysym and some
  2520. set of modifiers (such as control and meta).  A `keysym' is what is printed
  2521. on the keys on your keyboard.
  2522.  
  2523. A keysym may be represented by a symbol, or (if and only if it is equivalent
  2524. to an ASCII character in the range 32 - 255) by its ASCII code.  The `A' key
  2525. may be represented by the symbol `A' or by the number 65.  The `break' key
  2526. may be represented only by the symbol `break'.
  2527.  
  2528. A keystroke may be represented by a list: the last element of the list is
  2529. the key (a symbol or number, as above) and the preceding elements are the
  2530. symbolic names of modifier keys (control, meta, super, hyper, alt, and shift).
  2531. Thus, the sequence control-b is represented by the forms `(control b)' 
  2532. and `(control 98)'.  A keystroke may also be represented by an event object,
  2533. as returned by the `next-command-event' and `read-key-sequence' functions.
  2534.  
  2535. Note that in this context, the keystroke `control-b' is *not* represented
  2536. by the number 2 (the ASCII code for ^B).  See below.
  2537.  
  2538. The `shift' modifier is somewhat of a special case.  You should not (and
  2539. cannot) use `(meta shift a)' to mean `(meta A)', since for characters that
  2540. have ASCII equivalents, the state of the shift key is implicit in the
  2541. keysym (a vs. A).  You also cannot say `(shift =)' to mean `+', as that
  2542. sort of thing varies from keyboard to keyboard.  The shift modifier is for
  2543. use only with characters that do not have a second keysym on the same key,
  2544. such as `backspace' and `tab'.
  2545.  
  2546. A key sequence is a vector of keystrokes.  As a degenerate case, elements
  2547. of this vector may also be keysyms if they have no modifiers.  That is,
  2548. the `A' keystroke is represented by all of these forms:
  2549.     A    65    (A)    (65)    [A]    [65]    [(A)]    [(65)]
  2550. the `control-a' keystroke is represented by these forms:
  2551.     (control A)    (control 65)    [(control A)]    [(control 65)]
  2552. the key sequence `control-c control-a' is represented by these forms:
  2553.     [(control c) (control a)]    [(control 99) (control 65)]
  2554.  
  2555. Mouse button clicks work just like keypresses: (control button1) means
  2556. pressing the left mouse button while holding down the control key.
  2557. [(control c) (shift button3)] means control-c, hold shift, click right.
  2558.  
  2559. Commands may be bound to the mouse-button up-stroke rather than the down-
  2560. stroke as well.  `button1' means the down-stroke, and `button1up' means the
  2561. up-stroke.  Different commands may be bound to the up and down strokes,
  2562. though that is probably not what you want, so be careful.
  2563.  
  2564. For backward compatibility, a key sequence may also be represented by a
  2565. string.  In this case, it represents the key sequence(s) that would
  2566. produce that sequence of ASCII characters in a purely ASCII world.  For
  2567. example, a string containing the ASCII backspace character, "\^H", would
  2568. represent two key sequences: `(control h)' and `backspace'.  Binding a
  2569. command to this will actually bind both of those key sequences.  Likewise
  2570. for the following pairs:
  2571.  
  2572.         control h    backspace
  2573.         control i       tab
  2574.         control m       return
  2575.         control j       linefeed
  2576.         control [       escape
  2577.         control @    control space
  2578.  
  2579. After binding a command to two key sequences with a form like
  2580.  
  2581.     (define-key global-map "\^X\^I" 'command-1)
  2582.  
  2583. it is possible to redefine only one of those sequences like so:
  2584.  
  2585.     (define-key global-map [(control x) (control i)] 'command-2)
  2586.     (define-key global-map [(control x) tab] 'command-3)
  2587.  
  2588. Of course, all of this applies only when running under a window system.  If
  2589. you're talking to emacs through an ASCII-only channel, you don't get any of
  2590. these features.
  2591.  
  2592. arguments: (KEYMAP KEYS DEF)
  2593. Flookup-key
  2594. In keymap KEYMAP, look up key-sequence KEYS.  Return the definition.
  2595. Nil is returned if KEYS is unbound.  See documentation of `define-key'
  2596. for valid key definitions and key-sequence specifications.
  2597. A number is returned if KEYS is "too long"; that is, the leading
  2598. characters fail to be a valid sequence of prefix characters in KEYMAP.
  2599. The number is how many characters at the front of KEYS
  2600. it takes to reach a non-prefix command.
  2601.  
  2602. arguments: (KEYMAP KEYS &optional ACCEPT-DEFAULT)
  2603. Fcurrent-keymaps
  2604. Return a list of the current keymaps that will be searched for bindings.
  2605. This lists keymaps such as the current local map and the minor-mode maps,
  2606.  but does not list the parents of those keymaps.
  2607. EVENT-OR-KEYS controls which keymaps will be listed.
  2608. If EVENT-OR-KEYS is a mouse event (or a vector whose last element is a
  2609.  mouse event), the keymaps for that mouse event will be listed (see
  2610.  `key-binding').  Otherwise, the keymaps for key presses will be listed.
  2611.  
  2612. arguments: (&optional EVENT-OR-KEYS)
  2613. Fkey-binding
  2614. Return the binding for command KEYS in current keymaps.
  2615. KEYS is a string, a vector of events, or a vector of key-description lists
  2616. as described in the documentation for the `define-key' function.
  2617. The binding is probably a symbol with a function definition; see
  2618. the documentation for `lookup-key' for more information.
  2619.  
  2620. For key-presses, the order of keymaps searched is:
  2621.   - the `keymap' property of any extent(s) at point;
  2622.   - any applicable minor-mode maps;
  2623.   - the current-local-map of the current-buffer;
  2624.   - the current global map.
  2625.  
  2626. For mouse-clicks, the order of keymaps searched is:
  2627.   - the current-local-map of the `mouse-grabbed-buffer' if any;
  2628.   - the `keymap' property of any extent(s) at the position of the click;
  2629.   - the modeline-map of the buffer corresponding to the modeline under
  2630.     the mouse (if the click happened over a modeline);
  2631.   - the current-local-map of the buffer under the mouse;
  2632.   - any applicable minor-mode maps;
  2633.   - the current global map.
  2634.  
  2635. Note that if `overriding-local-map' is non-nil, *only* it and the current
  2636.  global map are searched.
  2637.  
  2638. arguments: (KEYS &optional ACCEPT-DEFAULT)
  2639. Fuse-global-map
  2640. Select KEYMAP as the global keymap.
  2641.  
  2642. arguments: (KEYMAP)
  2643. Fuse-local-map
  2644. Select KEYMAP as the local keymap in BUFFER.
  2645. If KEYMAP is nil, that means no local keymap.
  2646. If BUFFER is nil, the current buffer is assumed.
  2647.  
  2648. arguments: (KEYMAP &optional BUFFER)
  2649. Fcurrent-local-map
  2650. Return BUFFER's local keymap, or nil if it has none.
  2651. If BUFFER is nil, the current buffer is assumed.
  2652.  
  2653. arguments: (&optional BUFFER)
  2654. Fcurrent-global-map
  2655. Return the current global keymap.
  2656.  
  2657. arguments: ()
  2658. Fmap-keymap
  2659. Apply FUNCTION to each element of KEYMAP.
  2660. FUNCTION will be called with two arguments: a key-description list, and
  2661. the binding.  The order in which the elements of the keymap are passed to
  2662. the function is unspecified.  If the function inserts new elements into
  2663. the keymap, it may or may not be called with them later.  No element of
  2664. the keymap will ever be passed to the function more than once.
  2665.  
  2666. The function will not be called on elements of this keymap's parents
  2667. (see the function `keymap-parents') or upon keymaps which are contained
  2668. within this keymap (multi-character definitions).
  2669. It will be called on "meta" characters since they are not really
  2670. two-character sequences.
  2671.  
  2672. If the optional third argument SORT-FIRST is non-nil, then the elements of
  2673. the keymap will be passed to the mapper function in a canonical order.
  2674. Otherwise, they will be passed in hash (that is, random) order, which is
  2675. faster.
  2676.  
  2677. arguments: (FUNCTION KEYMAP &optional SORT-FIRST)
  2678. Faccessible-keymaps
  2679. Find all keymaps accessible via prefix characters from STARTMAP.
  2680. Returns a list of elements of the form (KEYS . MAP), where the sequence
  2681. KEYS starting from STARTMAP gets you to MAP.  These elements are ordered
  2682. so that the KEYS increase in length.  The first element is ([] . STARTMAP).
  2683. An optional argument PREFIX, if non-nil, should be a key sequence;
  2684. then the value includes only maps for prefixes that start with PREFIX.
  2685.  
  2686. arguments: (STARTMAP &optional PREFIX)
  2687. Fkey-description
  2688. Return a pretty description of key-sequence KEYS.
  2689. Control characters turn into "C-foo" sequences, meta into "M-foo"
  2690.  spaces are put between sequence elements, etc.
  2691.  
  2692. arguments: (KEYS)
  2693. Fsingle-key-description
  2694. Return a pretty description of command character KEY.
  2695. Control characters turn into C-whatever, etc.
  2696. This differs from `text-char-description' in that it returns a description
  2697. of a key read from the user rather than a character from a buffer.
  2698.  
  2699. arguments: (KEY)
  2700. Ftext-char-description
  2701. Return a pretty description of file-character CHAR.
  2702. Unprintable characters turn into "^char" or \NNN, depending on the value
  2703. of the `ctl-arrow' variable.
  2704. This differs from `single-key-description' in that it returns a description
  2705. of a character from a buffer rather than a key read from the user.
  2706.  
  2707. arguments: (CHR)
  2708. Fwhere-is-internal
  2709. Return list of keys that invoke DEFINITION in KEYMAPS.
  2710. KEYMAPS can be either a keymap (meaning search in that keymap and the
  2711. current global keymap) or a list of keymaps (meaning search in exactly
  2712. those keymaps and no others).  If KEYMAPS is nil, search in the currently
  2713. applicable maps for EVENT-OR-KEYS (this is equivalent to specifying
  2714. `(current-keymaps EVENT-OR-KEYS)' as the argument to KEYMAPS).
  2715.  
  2716. If optional 3rd arg FIRSTONLY is non-nil, return a vector representing
  2717.  the first key sequence found, rather than a list of all possible key
  2718.  sequences.
  2719.  
  2720. If optional 4th arg NOINDIRECT is non-nil, don't follow indirections
  2721.  to other keymaps or slots.  This makes it possible to search for an
  2722.  indirect definition itself.
  2723.  
  2724. arguments: (DEFINITION &optional KEYMAPS FIRSTONLY NOINDIRECT EVENT-OR-KEYS)
  2725. Fdescribe-bindings-internal
  2726. Insert a list of all defined keys and their definitions in MAP.
  2727. Optional second argument ALL says whether to include even "uninteresting"
  2728. definitions (ie symbols with a non-nil `suppress-keymap' property.
  2729. Third argument SHADOW is a list of keymaps whose bindings shadow those
  2730. of map; if a binding is present in any shadowing map, it is not printed.
  2731. Fourth argument PREFIX, if non-nil, should be a key sequence;
  2732. only bindings which start with that key sequence will be printed.
  2733. Fifth argument MOUSE-ONLY-P says to only print bindings for mouse clicks.
  2734.  
  2735. arguments: (MAP &optional ALL SHADOW PREFIX MOUSE-ONLY-P)
  2736. Vmeta-prefix-char
  2737. Meta-prefix character.
  2738. This character followed by some character `foo' turns into `Meta-foo'.
  2739. This can be any form recognized as a single key specifier.
  2740. To disable the meta-prefix-char, set it to a negative number.Vmouse-grabbed-buffer
  2741. A buffer which should be consulted first for all mouse activity.
  2742. When a mouse-clicked it processed, it will first be looked up in the
  2743. local-map of this buffer, and then through the normal mechanism if there
  2744. is no binding for that click.  This buffer's value of `mode-motion-hook'
  2745. will be consulted instead of the `mode-motion-hook' of the buffer of the
  2746. window under the mouse.  You should *bind* this, not set it.Voverriding-local-map
  2747. Keymap that overrides all other local keymaps.
  2748. If this variable is non-nil, it is used as a keymap instead of the
  2749. buffer's local map, and the minor mode keymaps and extent-local keymaps.
  2750. You should *bind* this, not set it.Vkeymap-tick
  2751. Incremented for each change to any keymap.Fbufferp
  2752. T if OBJECT is an editor buffer.
  2753.  
  2754. arguments: (OBJECT)
  2755. Fbuffer-live-p
  2756. T if OBJECT is an editor buffer that has not been deleted.
  2757.  
  2758. arguments: (OBJECT)
  2759. Fbuffer-list
  2760. Return a list of all existing live buffers.
  2761. The order is specific to the selected frame; if the optional FRAME
  2762. argument is provided, the ordering for that frame is returned instead.
  2763. If the FRAME argument is t, then the global (non-frame) ordering is
  2764. returned instead.
  2765.  
  2766. arguments: (&optional FRAME)
  2767. Fdecode-buffer
  2768. Validate BUFFER or if BUFFER is nil, return the current buffer.
  2769. If BUFFER is a valid buffer or a string representing a valid buffer,
  2770. the corresponding buffer object will be returned.  Otherwise an error
  2771. will be signaled.
  2772.  
  2773. arguments: (BUFFER)
  2774. Fget-buffer
  2775. Return the buffer named NAME (a string).
  2776. If there is no live buffer named NAME, return nil.
  2777. NAME may also be a buffer; if so, the value is that buffer.
  2778.  
  2779. arguments: (NAME)
  2780. Fget-file-buffer
  2781. Return the buffer visiting file FILENAME (a string).
  2782. If there is no such live buffer, return nil.
  2783.  
  2784. arguments: (FILENAME)
  2785. Fget-buffer-create
  2786. Return the buffer named NAME, or create such a buffer and return it.
  2787. A new buffer is created if there is no live buffer named NAME.
  2788. If NAME starts with a space, the new buffer does not keep undo information.
  2789. If NAME is a buffer instead of a string, then it is the value returned.
  2790. The value is never nil.
  2791.  
  2792. arguments: (NAME)
  2793. Fgenerate-new-buffer-name
  2794. Return a string that is the name of no existing buffer based on NAME.
  2795. If there is no live buffer named NAME, then return NAME.
  2796. Otherwise modify name by appending `<NUMBER>', incrementing NUMBER
  2797. until an unused name is found, and then return that name.
  2798. Optional second argument IGNORE specifies a name that is okay to use
  2799. (if it is in the sequence to be tried)
  2800. even if a buffer with that name exists.
  2801.  
  2802. arguments: (NAME &optional IGNORE)
  2803. Fbuffer-name
  2804. Return the name of BUFFER, as a string.
  2805. With no argument or nil as argument, return the name of the current buffer.
  2806.  
  2807. arguments: (&optional BUFFER)
  2808. Fbuffer-file-name
  2809. Return name of file BUFFER is visiting, or nil if none.
  2810. No argument or nil as argument means use the current buffer.
  2811.  
  2812. arguments: (&optional BUFFER)
  2813. Fbuffer-local-variables
  2814. Return an alist of variables that are buffer-local in BUFFER.
  2815. Most elements look like (SYMBOL . VALUE), describing one variable.
  2816. For a symbol that is locally unbound, just the symbol appears in the value.
  2817. Note that storing new VALUEs in these elements doesn't change the variables.
  2818. No argument or nil as argument means use current buffer as BUFFER.
  2819.  
  2820. arguments: (&optional BUFFER)
  2821. Fbuffer-dedicated-frame
  2822. Return the frame dedicated to this BUFFER, or nil if there is none.
  2823. No argument or nil as argument means use current buffer as BUFFER.
  2824.  
  2825. arguments: (&optional BUFFER)
  2826. Fset-buffer-dedicated-frame
  2827. For this BUFFER, set the FRAME dedicated to it.
  2828. FRAME must be a frame or nil.
  2829.  
  2830. arguments: (BUFFER FRAME)
  2831. Fbuffer-modified-p
  2832. Return t if BUFFER was modified since its file was last read or saved.
  2833. No argument or nil as argument means use current buffer as BUFFER.
  2834.  
  2835. arguments: (&optional BUFFER)
  2836. Fset-buffer-modified-p
  2837. Mark BUFFER as modified or unmodified according to FLAG.
  2838. A non-nil FLAG means mark the buffer modified.  No argument or nil
  2839. as BUFFER means use current buffer.
  2840.  
  2841. arguments: (FLAG &optional BUFFER)
  2842. Fbuffer-modified-tick
  2843. Return BUFFER's tick counter, incremented for each change in text.
  2844. Each buffer has a tick counter which is incremented each time the text in
  2845. that buffer is changed.  It wraps around occasionally.
  2846. No argument or nil as argument means use current buffer as BUFFER.
  2847.  
  2848. arguments: (&optional BUFFER)
  2849. Frename-buffer
  2850. Change current buffer's name to NAME (a string).
  2851. If second arg UNIQUE is nil or omitted, it is an error if a
  2852. buffer named NAME already exists.
  2853. If UNIQUE is non-nil, come up with a new name using
  2854. `generate-new-buffer-name'.
  2855. Interactively, one can set UNIQUE with a prefix argument.
  2856. Returns the name we actually gave the buffer.
  2857. This does not change the name of the visited file (if any).
  2858.  
  2859. arguments: (NAME &optional UNIQUE)
  2860. Fother-buffer
  2861. Return most recently selected buffer other than BUFFER.
  2862. Buffers not visible in windows are preferred to visible buffers,
  2863. unless optional third argument VISIBLE-OK is non-nil.
  2864. If no other buffer exists, the buffer `*scratch*' is returned.
  2865. If BUFFER is omitted or nil, some interesting buffer is returned.
  2866.  
  2867. The ordering is for this frame; If second optional argument FRAME
  2868. is provided, then the ordering is for that frame.  If the second arg
  2869. is t, then the global ordering is returned.
  2870.  
  2871. Note: In FSF Emacs, this function takes two arguments: BUFFER and
  2872. VISIBLE-OK.
  2873.  
  2874. arguments: (&optional BUFFER FRAME VISIBLE-OK)
  2875. Fbuffer-disable-undo
  2876. Make BUFFER stop keeping undo information.
  2877. Any undo records it already has are discarded.
  2878.  
  2879. arguments: (BUFFER)
  2880. Fbuffer-enable-undo
  2881. Start keeping undo information for buffer BUFFER.
  2882. No argument or nil as argument means do this for the current buffer.
  2883.  
  2884. arguments: (&optional BUFFER)
  2885. Fkill-buffer
  2886. Kill the buffer BUFNAME.
  2887. The argument may be a buffer or may be the name of a buffer.
  2888. An argument of nil means kill the current buffer.
  2889.  
  2890. Value is t if the buffer is actually killed, nil if user says no.
  2891.  
  2892. The value of `kill-buffer-hook' (which may be local to that buffer),
  2893. if not void, is a list of functions to be called, with no arguments,
  2894. before the buffer is actually killed.  The buffer to be killed is current
  2895. when the hook functions are called.
  2896.  
  2897. Any processes that have this buffer as the `process-buffer' are killed
  2898. with `delete-process'.
  2899.  
  2900. arguments: (BUFNAME)
  2901. Fswitch-to-buffer
  2902. Select buffer BUFNAME in the current window.
  2903. BUFNAME may be a buffer or a buffer name.
  2904. Optional second arg NORECORD non-nil means
  2905. do not put this buffer at the front of the list of recently selected ones.
  2906.  
  2907. WARNING: This is NOT the way to work on another buffer temporarily
  2908. within a Lisp program!  Use `set-buffer' instead.  That avoids messing with
  2909. the window-buffer correspondences.
  2910.  
  2911. arguments: (BUFNAME &optional NORECORD)
  2912. Fpop-to-buffer
  2913. Select buffer BUFNAME in some window, preferably a different one.
  2914. If BUFNAME is nil, then some other buffer is chosen.
  2915. If `pop-up-windows' is non-nil, windows can be split to do this.
  2916. If optional second arg NOT-THIS-WINDOW-P is non-nil, insist on finding
  2917. another window even if BUFNAME is already visible in the selected window.
  2918. If optional third arg is non-nil, it is the frame to pop to this
  2919. buffer on.
  2920.  
  2921. arguments: (BUFNAME &optional NOT-THIS-WINDOW-P ON-FRAME)
  2922. Fcurrent-buffer
  2923. Return the current buffer as a Lisp object.
  2924.  
  2925. arguments: ()
  2926. Fset-buffer
  2927. Make the buffer BUFNAME current for editing operations.
  2928. BUFNAME may be a buffer or the name of an existing buffer.
  2929. See also `save-excursion' when you want to make a buffer current temporarily.
  2930. This function does not display the buffer, so its effect ends
  2931. when the current command terminates.
  2932. Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently.
  2933.  
  2934. arguments: (BUFNAME)
  2935. Fbarf-if-buffer-read-only
  2936. Signal a `buffer-read-only' error if the buffer is read-only.
  2937. Optional argument BUFFER defaults to the current buffer.
  2938.  
  2939. If optional argument START is non-nil, all extents in the buffer
  2940. which overlap that part of the buffer are checked to ensure none has a
  2941. `read-only' property. (Extents that lie completely within the range,
  2942. however, are not checked.) END defaults to the value of START.
  2943.  
  2944. If START and END are equal, the range checked is [START, END] (i.e.
  2945. closed on both ends); otherwise, the range checked is (START, END)
  2946. (open on both ends), except that extents that lie completely within
  2947. [START, END] are not checked.  See `extent-in-region-p' for a fuller
  2948. discussion.
  2949.  
  2950. arguments: (&optional BUFFER START END)
  2951. Fbury-buffer
  2952. Put BUFFER at the end of the list of all buffers.
  2953. There it is the least likely candidate for `other-buffer' to return;
  2954. thus, the least likely buffer for \[switch-to-buffer] to select by default.
  2955. If BUFFER is nil or omitted, bury the current buffer.
  2956. Also, if BUFFER is nil or omitted, remove the current buffer from the
  2957. selected window if it is displayed there.
  2958. If BEFORE is non-nil, it specifies a buffer before which BUFFER
  2959. will be placed, instead of being placed at the end.
  2960.  
  2961. arguments: (&optional BUFFER BEFORE)
  2962. Ferase-buffer
  2963. Delete the entire contents of the BUFFER.
  2964. Any clipping restriction in effect (see `narrow-to-region') is removed,
  2965. so the buffer is truly empty after this.
  2966. BUFFER defaults to the current buffer if omitted.
  2967.  
  2968. arguments: (&optional BUFFER)
  2969. Fkill-all-local-variables
  2970. Switch to Fundamental mode by killing current buffer's local variables.
  2971. Most local variable bindings are eliminated so that the default values
  2972. become effective once more.  Also, the syntax table is set from
  2973. `standard-syntax-table', the local keymap is set to nil,
  2974. and the abbrev table from `fundamental-mode-abbrev-table'.
  2975. This function also forces redisplay of the modeline.
  2976.  
  2977. Every function to select a new major mode starts by
  2978. calling this function.
  2979.  
  2980. As a special exception, local variables whose names have
  2981. a non-nil `permanent-local' property are not eliminated by this function.
  2982.  
  2983. The first thing this function does is run
  2984. the normal hook `change-major-mode-hook'.
  2985.  
  2986. arguments: ()
  2987. Vchange-major-mode-hook
  2988. List of hooks to be run before killing local variables in a buffer.
  2989. This should be used by by any mode that temporarily alters the contents or
  2990. the read-only state of the buffer.  See also `kill-all-local-variables'.Vfind-file-compare-truenames
  2991. If this is true, then the find-file command will check the truenames
  2992. of all visited files when deciding whether a given file is already in
  2993. a buffer, instead of just the buffer-file-name.  This means that if you
  2994. attempt to visit another file which is a symbolic-link to a file which is
  2995. already in a buffer, the existing buffer will be found instead of a newly-
  2996. created one.  This works if any component of the pathname (including a non-
  2997. terminal component) is a symbolic link as well, but doesn't work with hard
  2998. links (nothing does).
  2999.  
  3000. See also the variable find-file-use-truenames.Vfind-file-use-truenames
  3001. If this is true, then a buffer's visited file-name will always be
  3002. chased back to the real file; it will never be a symbolic link, and there
  3003. will never be a symbolic link anywhere in its directory path.
  3004. That is, the buffer-file-name and buffer-file-truename will be equal.
  3005. This doesn't work with hard links.
  3006.  
  3007. See also the variable find-file-compare-truenames.Vfind-file-visit-truename
  3008. An alias for `find-file-use-truenames'.
  3009. This variable is present for compatibility with FSF Emacs.Vbefore-change-functions
  3010. List of functions to call before each text change.
  3011. Two arguments are passed to each function: the positions of
  3012. the beginning and end of the range of old text to be changed.
  3013. (For an insertion, the beginning and end are at the same place.)
  3014. No information is given about the length of the text after the change.
  3015.  
  3016. Buffer changes made while executing the `before-change-functions'
  3017. don't call any before-change or after-change functions.Vafter-change-functions
  3018. List of functions to call after each text change.
  3019. Three arguments are passed to each function: the positions of
  3020. the beginning and end of the range of changed text,
  3021. and the length of the pre-change text replaced by that range.
  3022. (For an insertion, the pre-change length is zero;
  3023. for a deletion, that length is the number of characters deleted,
  3024. and the post-change beginning and end are at the same place.)
  3025.  
  3026. Buffer changes made while executing `after-change-functions'
  3027. don't call any before-change or after-change functions.Vbefore-change-function
  3028. Vafter-change-function
  3029. Vfirst-change-hook
  3030. A list of functions to call before changing a buffer which is unmodified.
  3031. The functions are run using the `run-hooks' function.Vundo-threshold
  3032. Keep no more undo information once it exceeds this size.
  3033. This threshold is applied when garbage collection happens.
  3034. The size is counted as the number of bytes occupied,
  3035. which includes both saved text and other data.Vundo-high-threshold
  3036. Don't keep more than this much size of undo information.
  3037. A command which pushes past this size is itself forgotten.
  3038. This threshold is applied when garbage collection happens.
  3039. The size is counted as the number of bytes occupied,
  3040. which includes both saved text and other data.Vinhibit-read-only
  3041. *Non-nil means disregard read-only status of buffers or characters.
  3042. If the value is t, disregard `buffer-read-only' and all `read-only'
  3043. text properties.  If the value is a list, disregard `buffer-read-only'
  3044. and disregard a `read-only' text property if the property value
  3045. is a member of the list.Vkill-buffer-query-functions
  3046. List of functions called with no args to query before killing a buffer.Vdelete-auto-save-files
  3047. *Non-nil means delete auto-save file when a buffer is saved or killed.Vdefault-modeline-format
  3048. Default value of `modeline-format' for buffers that don't override it.
  3049. This is the same as (default-value 'modeline-format).Vdefault-abbrev-mode
  3050. Default value of `abbrev-mode' for buffers that do not override it.
  3051. This is the same as (default-value 'abbrev-mode).Vdefault-ctl-arrow
  3052. Default value of `ctl-arrow' for buffers that do not override it.
  3053. This is the same as (default-value 'ctl-arrow).Vdefault-display-direction
  3054. Default display-direction for buffers that do not override it.
  3055. This is the same as (default-value 'display-direction).
  3056. Note: This is not yet implemented.Vdefault-truncate-lines
  3057. Default value of `truncate-lines' for buffers that do not override it.
  3058. This is the same as (default-value 'truncate-lines).Vdefault-fill-column
  3059. Default value of `fill-column' for buffers that do not override it.
  3060. This is the same as (default-value 'fill-column).Vdefault-left-margin
  3061. Default value of `left-margin' for buffers that do not override it.
  3062. This is the same as (default-value 'left-margin).Vdefault-tab-width
  3063. Default value of `tab-width' for buffers that do not override it.
  3064. This is the same as (default-value 'tab-width).Vdefault-case-fold-search
  3065. Default value of `case-fold-search' for buffers that don't override it.
  3066. This is the same as (default-value 'case-fold-search).Vdefault-buffer-file-type
  3067. Default file type for buffers that do not override it.
  3068. This is the same as (default-value 'buffer-file-type).
  3069. The file type is nil for text, t for binary.Vmodeline-format
  3070. Template for displaying modeline for current buffer.
  3071. Each buffer has its own value of this variable.
  3072. Value may be a string, a symbol or a list or cons cell.
  3073. For a symbol, its value is used (but it is ignored if t or nil).
  3074.  A string appearing directly as the value of a symbol is processed verbatim
  3075.  in that the %-constructs below are not recognized.
  3076. For a list whose car is a symbol, the symbol's value is taken,
  3077.  and if that is non-nil, the cadr of the list is processed recursively.
  3078.  Otherwise, the caddr of the list (if there is one) is processed.
  3079. For a list whose car is a string or list, each element is processed
  3080.  recursively and the results are effectively concatenated.
  3081. For a list whose car is an integer, the cdr of the list is processed
  3082.   and padded (if the number is positive) or truncated (if negative)
  3083.   to the width specified by that number.
  3084. A string is printed verbatim in the modeline except for %-constructs:
  3085.   (%-constructs are allowed when the string is the entire modeline-format
  3086.    or when it is found in a cons-cell or a list)
  3087.   %b -- print buffer name.      %c -- print the current column number.
  3088.   %f -- print visited file name.
  3089.   %* -- print %, * or hyphen.   %+ -- print *, % or hyphen.
  3090.     % means buffer is read-only and * means it is modified.
  3091.     For a modified read-only buffer, %* gives % and %+ gives *.
  3092.   %s -- print process status.   %l -- print the current line number.
  3093.   %S -- print name of selected frame (only meaningful under X Windows).
  3094.   %p -- print percent of buffer above top of window, or Top, Bot or All.
  3095.   %P -- print percent of buffer above bottom of window, perhaps plus Top,
  3096.         or print Bottom or All.
  3097.   %n -- print Narrow if appropriate.
  3098.   %t -- Under MS-DOS, print T if files is text, B if binary.
  3099.   %[ -- print one [ for each recursive editing level.  %] similar.
  3100.   %% -- print %.                %- -- print infinitely many dashes.
  3101. Decimal digits after the % specify field width to which to pad.Vdefault-major-mode
  3102. *Major mode for new buffers.  Defaults to `fundamental-mode'.
  3103. nil here means use current buffer's major mode.Vfundamental-mode-abbrev-table
  3104. The abbrev table of mode-specific abbrevs for Fundamental Mode.Vmajor-mode
  3105. Symbol for current buffer's major mode.Vmode-name
  3106. Pretty name of current buffer's major mode (a string).Vabbrev-mode
  3107. Non-nil turns on automatic expansion of abbrevs as they are inserted.
  3108. Automatically becomes buffer-local when set in any fashion.Vcase-fold-search
  3109. *Non-nil if searches should ignore case.
  3110. Automatically becomes buffer-local when set in any fashion.Vfill-column
  3111. *Column beyond which automatic line-wrapping should happen.
  3112. Automatically becomes buffer-local when set in any fashion.Vleft-margin
  3113. *Column for the default indent-line-function to indent to.
  3114. Linefeed indents to this column in Fundamental mode.
  3115. Automatically becomes buffer-local when set in any fashion.
  3116. Do not confuse this with the specifier `left-margin-width';
  3117. that controls the size of a margin that is displayed outside
  3118. of the text area.Vtab-width
  3119. *Distance between tab stops (for display of tab characters), in columns.
  3120. Automatically becomes buffer-local when set in any fashion.Vctl-arrow
  3121. *Non-nil means display control chars with uparrow.
  3122. Nil means use backslash and octal digits.
  3123. An integer means characters >= ctl-arrow are assumed to be printable, and
  3124. will be displayed as a single glyph.
  3125. Any other value is the same as 160 - the code SPC with the high bit on.
  3126.  
  3127. The interpretation of this variable is likely to change in the future.
  3128.  
  3129. Automatically becomes buffer-local when set in any fashion.
  3130. This variable does not apply to characters whose display is specified
  3131. in the current display table (if there is one).Vdisplay-direction
  3132. *Non-nil means lines in the buffer are displayed right to left.
  3133. Nil means left to right. (Not yet implemented.)Vtruncate-lines
  3134. *Non-nil means do not display continuation lines;
  3135. give each line of text one frame line.
  3136. Automatically becomes buffer-local when set in any fashion.
  3137.  
  3138. Note that this is overridden by the variable
  3139. `truncate-partial-width-windows' if that variable is non-nil
  3140. and this buffer is not full-frame width.Vdefault-directory
  3141. Name of default directory of current buffer.  Should end with slash.
  3142. Each buffer has its own value of this variable.Vfep-mode
  3143. *Document me.Vbuffer-file-type
  3144. *If visited file is text, nil; otherwise, t.Vauto-fill-function
  3145. Function called (if non-nil) to perform auto-fill.
  3146. It is called after self-inserting a space at a column beyond `fill-column'.
  3147. Each buffer has its own value of this variable.
  3148. NOTE: This variable is not an ordinary hook;
  3149. It may not be a list of functions.Vbuffer-file-name
  3150. Name of file visited in current buffer, or nil if not visiting a file.
  3151. Each buffer has its own value of this variable.Vbuffer-file-truename
  3152. The real name of the file visited in the current buffer, 
  3153. or nil if not visiting a file.  This is the result of passing 
  3154. buffer-file-name to the `truename' function.  Every buffer has 
  3155. its own value of this variable.  This variable is automatically 
  3156. maintained by the functions that change the file name associated 
  3157. with a buffer.Vbuffer-auto-save-file-name
  3158. Name of file for auto-saving current buffer,
  3159. or nil if buffer should not be auto-saved.
  3160. Each buffer has its own value of this variable.Vbuffer-read-only
  3161. Non-nil if this buffer is read-only.
  3162. Each buffer has its own value of this variable.Vbuffer-backed-up
  3163. Non-nil if this buffer's file has been backed up.
  3164. Backing up is done before the first time the file is saved.
  3165. Each buffer has its own value of this variable.Vbuffer-saved-size
  3166. Length of current buffer when last read in, saved or auto-saved.
  3167. 0 initially.
  3168. Each buffer has its own value of this variable.Vselective-display
  3169. Non-nil enables selective display:
  3170. Integer N as value means display only lines
  3171.  that start with less than n columns of space.
  3172. A value of t means, after a ^M, all the rest of the line is invisible.
  3173.  Then ^M's in the file are written into files as newlines.
  3174.  
  3175. Automatically becomes buffer-local when set in any fashion.Vselective-display-ellipses
  3176. t means display ... on previous line when a line is invisible.
  3177. Automatically becomes buffer-local when set in any fashion.Vlocal-abbrev-table
  3178. Local (mode-specific) abbrev table of current buffer.Voverwrite-mode
  3179. Non-nil if self-insertion should replace existing text.
  3180. If non-nil and not `overwrite-mode-binary', self-insertion still
  3181. inserts at the end of a line, and inserts when point is before a tab,
  3182. until the tab is filled in.
  3183. If `overwrite-mode-binary', self-insertion replaces newlines and tabs too.
  3184. Automatically becomes buffer-local when set in any fashion.Vbuffer-undo-list
  3185. List of undo entries in current buffer.
  3186. Recent changes come first; older changes follow newer.
  3187.  
  3188. An entry (START . END) represents an insertion which begins at
  3189. position START and ends at position END.
  3190.  
  3191. An entry (TEXT . POSITION) represents the deletion of the string TEXT
  3192. from (abs POSITION).  If POSITION is positive, point was at the front
  3193. of the text being deleted; if negative, point was at the end.
  3194.  
  3195. An entry (t HIGHWORD LOWWORD) indicates that the buffer had been
  3196. previously unmodified.  HIGHWORD and LOWWORD are the high and low
  3197. 16-bit words of the buffer's modification count at the time.  If the
  3198. modification count of the most recent save is different, this entry is
  3199. obsolete.
  3200.  
  3201. An entry of the form POSITION indicates that point was at the buffer
  3202. location given by the integer.  Undoing an entry of this form places
  3203. point at POSITION.
  3204.  
  3205. nil marks undo boundaries.  The undo command treats the changes
  3206. between two undo boundaries as a single step to be undone.
  3207.  
  3208. If the value of the variable is t, undo information is not recorded.Flock-buffer
  3209. Lock FILE, if current buffer is modified.
  3210. FILE defaults to current buffer's visited file,
  3211. or else nothing is done if current buffer isn't visiting a file.
  3212.  
  3213. arguments: (&optional FN)
  3214. Funlock-buffer
  3215. Unlock the file visited in the current buffer,
  3216. if it should normally be locked.
  3217.  
  3218. arguments: ()
  3219. Ffile-locked-p
  3220. Return nil if the FILENAME is not locked,
  3221. t if it is locked by you, else a string of the name of the locker.
  3222.  
  3223. arguments: (&optional FN)
  3224. Vlock-directory
  3225. Don't change thisVsuperlock-path
  3226. Don't change thisFmarker-buffer
  3227. Return the buffer that MARKER points into, or nil if none.
  3228. Returns nil if MARKER points into a dead buffer.
  3229.  
  3230. arguments: (MARKER)
  3231. Fmarker-position
  3232. Return the position MARKER points at, as a character number.
  3233. Returns `nil' if marker doesn't point anywhere.
  3234.  
  3235. arguments: (MARKER)
  3236. Fset-marker
  3237. Position MARKER before character number NUMBER in BUFFER.
  3238. BUFFER defaults to the current buffer.
  3239. If NUMBER is nil, makes marker point nowhere.
  3240. Then it no longer slows down editing in any buffer.
  3241. If this marker was returned by (point-marker t), then changing its position
  3242. moves point.  You cannot change its buffer or make it point nowhere.
  3243. Returns MARKER.
  3244.  
  3245. arguments: (MARKER POS &optional BUFFER)
  3246. Fcopy-marker
  3247. Return a new marker pointing at the same place as MARKER.
  3248. If argument is a number, makes a new marker pointing
  3249. at that position in the current buffer.
  3250.  
  3251. arguments: (MARKER)
  3252. Fminibuffer-depth
  3253. Return current depth of activations of minibuffer, a nonnegative integer.
  3254.  
  3255. arguments: ()
  3256. Fread-minibuffer-internal
  3257. Lowest-level interface to minibuffers.  Don't call this.
  3258.  
  3259. arguments: (PROMPT)
  3260. Ftry-completion
  3261. Return common substring of all completions of STRING in ALIST.
  3262. Each car of each element of ALIST is tested to see if it begins with STRING.
  3263. All that match are compared together; the longest initial sequence
  3264. common to all matches is returned as a string.
  3265. If there is no match at all, nil is returned.
  3266. For an exact match, t is returned.
  3267.  
  3268. ALIST can be an obarray instead of an alist.
  3269. Then the print names of all symbols in the obarray are the possible matches.
  3270.  
  3271. ALIST can also be a function to do the completion itself.
  3272. It receives three arguments: the values STRING, PREDICATE and nil.
  3273. Whatever it returns becomes the value of `try-completion'.
  3274.  
  3275. If optional third argument PREDICATE is non-nil,
  3276. it is used to test each possible match.
  3277. The match is a candidate only if PREDICATE returns non-nil.
  3278. The argument given to PREDICATE is the alist element or the symbol from the obarray.
  3279.  
  3280. arguments: (STRING ALIST &optional PRED)
  3281. Fall-completions
  3282. Search for partial matches to STRING in ALIST.
  3283. Each car of each element of ALIST is tested to see if it begins with STRING.
  3284. The value is a list of all the strings from ALIST that match.
  3285. ALIST can be an obarray instead of an alist.
  3286. Then the print names of all symbols in the obarray are the possible matches.
  3287.  
  3288. ALIST can also be a function to do the completion itself.
  3289. It receives three arguments: the values STRING, PREDICATE and t.
  3290. Whatever it returns becomes the value of `all-completions'.
  3291.  
  3292. If optional third argument PREDICATE is non-nil,
  3293. it is used to test each possible match.
  3294. The match is a candidate only if PREDICATE returns non-nil.
  3295. The argument given to PREDICATE is the alist element or
  3296. the symbol from the obarray.
  3297.  
  3298. arguments: (STRING ALIST &optional PRED)
  3299. Vminibuffer-setup-hook
  3300. Normal hook run just after entry to minibuffer.Vcompletion-ignore-case
  3301. Non-nil means don't consider case significant in completion.Vcompletion-regexp-list
  3302. List of regexps that should restrict possible completions.Ffind-file-name-handler
  3303. Return FILENAME's handler function for OPERATION, if it has one.
  3304. Otherwise, return nil.
  3305. A file name is handled if one of the regular expressions in
  3306. `file-name-handler-alist' matches it.
  3307.  
  3308. If OPERATION equals `inhibit-file-name-operation', then we ignore
  3309. any handlers that are members of `inhibit-file-name-handlers',
  3310. but we still do run any other handlers.  This lets handlers
  3311. use the standard functions without calling themselves recursively.
  3312.  
  3313. arguments: (FILENAME &optional OPERATION)
  3314. Ffile-name-directory
  3315. Return the directory component in file name NAME.
  3316. Return nil if NAME does not include a directory.
  3317. Otherwise return a directory spec.
  3318. Given a Unix syntax file name, returns a string ending in slash;
  3319. on VMS, perhaps instead a string ending in `:', `]' or `>'.
  3320.  
  3321. arguments: (FILE)
  3322. Ffile-name-nondirectory
  3323. Return file name NAME sans its directory.
  3324. For example, in a Unix-syntax file name,
  3325. this is everything after the last slash,
  3326. or the entire name if it contains no slash.
  3327.  
  3328. arguments: (FILE)
  3329. Funhandled-file-name-directory
  3330. Return a directly usable directory name somehow associated with FILENAME.
  3331. A `directly usable' directory name is one that may be used without the
  3332. intervention of any file handler.
  3333. If FILENAME is a directly usable file itself, return
  3334. (file-name-directory FILENAME).
  3335. The `call-process' and `start-process' functions use this function to
  3336. get a current directory to run processes in.
  3337.  
  3338. arguments: (FILENAME)
  3339. Ffile-name-as-directory
  3340. Return a string representing file FILENAME interpreted as a directory.
  3341. This operation exists because a directory is also a file, but its name as
  3342. a directory is different from its name as a file.
  3343. The result can be used as the value of `default-directory'
  3344. or passed as second argument to `expand-file-name'.
  3345. For a Unix-syntax file name, just appends a slash.
  3346. On VMS, converts "[X]FOO.DIR" to "[X.FOO]", etc.
  3347.  
  3348. arguments: (FILE)
  3349. Fdirectory-file-name
  3350. Return the file name of the directory named DIR.
  3351. This is the name of the file that holds the data for the directory DIR.
  3352. This operation exists because a directory is also a file, but its name as
  3353. a directory is different from its name as a file.
  3354. In Unix-syntax, this function just removes the final slash.
  3355. On VMS, given a VMS-syntax directory name such as "[X.Y]",
  3356. it returns a file name such as "[X]Y.DIR.1".
  3357.  
  3358. arguments: (DIRECTORY)
  3359. Fmake-temp-name
  3360. Generate temporary file name (string) starting with PREFIX (a string).
  3361. The Emacs process number forms part of the result,
  3362. so there is no danger of generating a name being used by another process.
  3363.  
  3364. arguments: (PREFIX)
  3365. Fexpand-file-name
  3366. Convert FILENAME to absolute, and canonicalize it.
  3367. Second arg DEFAULT is directory to start with if FILENAME is relative
  3368.  (does not start with slash); if DEFAULT is nil or missing,
  3369. the current buffer's value of default-directory is used.
  3370. Path components that are `.' are removed, and 
  3371. path components followed by `..' are removed, along with the `..' itself;
  3372. note that these simplifications are done without checking the resulting
  3373. paths in the file system.
  3374. An initial `~/' expands to your home directory.
  3375. An initial `~USER/' expands to USER's home directory.
  3376. See also the function `substitute-in-file-name'.
  3377.  
  3378. arguments: (NAME &optional DEFAULT)
  3379. Ffile-truename
  3380. Return the canonical name of the given FILE.
  3381. Second arg DEFAULT is directory to start with if FILE is relative
  3382.  (does not start with slash); if DEFAULT is nil or missing,
  3383.  the current buffer's value of default-directory is used.
  3384. No component of the resulting pathname will be a symbolic link, as
  3385.  in the realpath() function.
  3386.  
  3387. arguments: (FILENAME &optional DEFAULT)
  3388. Fsubstitute-in-file-name
  3389. Substitute environment variables referred to in FILENAME.
  3390. `$FOO' where FOO is an environment variable name means to substitute
  3391. the value of that variable.  The variable name should be terminated
  3392. with a character not a letter, digit or underscore; otherwise, enclose
  3393. the entire variable name in braces.
  3394. If `/~' appears, all of FILENAME through that `/' is discarded.
  3395.  
  3396. On VMS, `$' substitution is not done; this function does little and only
  3397. duplicates what `expand-file-name' does.
  3398.  
  3399. arguments: (STRING)
  3400. Fcopy-file
  3401. Copy FILE to NEWNAME.  Both args must be strings.
  3402. Signals a `file-already-exists' error if file NEWNAME already exists,
  3403. unless a third argument OK-IF-ALREADY-EXISTS is supplied and non-nil.
  3404. A number as third arg means request confirmation if NEWNAME already exists.
  3405. This is what happens in interactive use with M-x.
  3406. Fourth arg KEEP-TIME non-nil means give the new file the same
  3407. last-modified time as the old one.  (This works on only some systems.)
  3408. A prefix arg makes KEEP-TIME non-nil.
  3409.  
  3410. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-DATE)
  3411. Fmake-directory-internal
  3412. Create a directory.  One argument, a file name string.
  3413.  
  3414. arguments: (DIRNAME)
  3415. Fdelete-directory
  3416. Delete a directory.  One argument, a file name or directory name string.
  3417.  
  3418. arguments: (DIRNAME)
  3419. Fdelete-file
  3420. Delete specified file.  One argument, a file name string.
  3421. If file has multiple names, it continues to exist with the other names.
  3422.  
  3423. arguments: (FILENAME)
  3424. Frename-file
  3425. Rename FILE as NEWNAME.  Both args strings.
  3426. If file has names other than FILE, it continues to have those names.
  3427. Signals a `file-already-exists' error if a file NEWNAME already exists
  3428. unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
  3429. A number as third arg means request confirmation if NEWNAME already exists.
  3430. This is what happens in interactive use with M-x.
  3431.  
  3432. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS)
  3433. Fadd-name-to-file
  3434. Give FILE additional name NEWNAME.  Both args strings.
  3435. Signals a `file-already-exists' error if a file NEWNAME already exists
  3436. unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
  3437. A number as third arg means request confirmation if NEWNAME already exists.
  3438. This is what happens in interactive use with M-x.
  3439.  
  3440. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS)
  3441. Fmake-symbolic-link
  3442. Make a symbolic link to FILENAME, named LINKNAME.  Both args strings.
  3443. Signals a `file-already-exists' error if a file NEWNAME already exists
  3444. unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
  3445. A number as third arg means request confirmation if NEWNAME already exists.
  3446. This happens for interactive use with M-x.
  3447.  
  3448. arguments: (FILENAME LINKNAME &optional OK-IF-ALREADY-EXISTS)
  3449. Fdefine-logical-name
  3450. Define the job-wide logical name NAME to have the value STRING.
  3451. If STRING is nil or a null string, the logical name NAME is deleted.
  3452.  
  3453. arguments: (VARNAME STRING)
  3454. Fsysnetunam
  3455. Open a network connection to PATH using LOGIN as the login string.
  3456.  
  3457. arguments: (PATH LOGIN)
  3458. Ffile-name-absolute-p
  3459. Return t if file FILENAME specifies an absolute path name.
  3460. On Unix, this is a name starting with a `/' or a `~'.
  3461.  
  3462. arguments: (FILENAME)
  3463. Ffile-exists-p
  3464. Return t if file FILENAME exists.  (This does not mean you can read it.)
  3465. See also `file-readable-p' and `file-attributes'.
  3466.  
  3467. arguments: (FILENAME)
  3468. Ffile-executable-p
  3469. Return t if FILENAME can be executed by you.
  3470. For a directory, this means you can access files in that directory.
  3471.  
  3472. arguments: (FILENAME)
  3473. Ffile-readable-p
  3474. Return t if file FILENAME exists and you can read it.
  3475. See also `file-exists-p' and `file-attributes'.
  3476.  
  3477. arguments: (FILENAME)
  3478. Ffile-symlink-p
  3479. Return non-nil if file FILENAME is the name of a symbolic link.
  3480. The value is the name of the file to which it is linked.
  3481. Otherwise returns nil.
  3482.  
  3483. arguments: (FILENAME)
  3484. Ffile-writable-p
  3485. Return t if file FILENAME can be written or created by you.
  3486.  
  3487. arguments: (FILENAME)
  3488. Ffile-directory-p
  3489. Return t if file FILENAME is the name of a directory as a file.
  3490. A directory name spec may be given instead; then the value is t
  3491. if the directory so specified exists and really is a directory.
  3492.  
  3493. arguments: (FILENAME)
  3494. Ffile-accessible-directory-p
  3495. Return t if file FILENAME is the name of a directory as a file,
  3496. and files in that directory can be opened by you.  In order to use a
  3497. directory as a buffer's current directory, this predicate must return true.
  3498. A directory name spec may be given instead; then the value is t
  3499. if the directory so specified exists and really is a readable and
  3500. searchable directory.
  3501.  
  3502. arguments: (FILENAME)
  3503. Ffile-modes
  3504. Return mode bits of FILE, as an integer.
  3505.  
  3506. arguments: (FILENAME)
  3507. Fset-file-modes
  3508. Set mode bits of FILE to MODE (an integer).
  3509. Only the 12 low bits of MODE are used.
  3510.  
  3511. arguments: (FILENAME MODE)
  3512. Fset-default-file-modes
  3513. Set the file permission bits for newly created files.
  3514. MASK should be an integer; if a permission's bit in MASK is 1,
  3515. subsequently created files will not have that permission enabled.
  3516. Only the low 9 bits are used.
  3517. This setting is inherited by subprocesses.
  3518.  
  3519. arguments: (MODE)
  3520. Fdefault-file-modes
  3521. Return the default file protection for created files.
  3522. The umask value determines which permissions are enabled in newly
  3523. created files.  If a permission's bit in the umask is 1, subsequently
  3524. created files will not have that permission enabled.
  3525.  
  3526. arguments: ()
  3527. Funix-sync
  3528. Tell Unix to finish all pending disk updates.
  3529.  
  3530. arguments: ()
  3531. Ffile-newer-than-file-p
  3532. Return t if file FILE1 is newer than file FILE2.
  3533. If FILE1 does not exist, the answer is nil;
  3534. otherwise, if FILE2 does not exist, the answer is t.
  3535.  
  3536. arguments: (FILE1 FILE2)
  3537. Fcompute-buffer-file-truename
  3538. Recomputes this buffer's value of `buffer-file-truename'
  3539. based on the current value of `buffer-file-name'.
  3540.  
  3541. arguments: ()
  3542. Finsert-file-contents-internal
  3543. Insert contents of file FILENAME after point.
  3544. Returns list of absolute file name and length of data inserted.
  3545. If second argument VISIT is non-nil, the buffer's visited filename
  3546. and last save file modtime are set, and it is marked unmodified.
  3547. If visiting and the file does not exist, visiting is completed
  3548. before the error is signaled.
  3549.  
  3550. The optional third and fourth arguments BEG and END
  3551. specify what portion of the file to insert.
  3552. If VISIT is non-nil, BEG and END must be nil.
  3553. If optional fifth argument REPLACE is non-nil,
  3554. it means replace the current buffer contents (in the accessible portion)
  3555. with the file contents.  This is better than simply deleting and inserting
  3556. the whole thing because (1) it preserves some marker positions
  3557. and (2) it puts less data in the undo list.
  3558. If support for Mule exists in this Emacs, code conversion occurs according
  3559. to the value of `input-coding-system', and `used-coding-system' is set to
  3560. the coding system actually used.  Currently BEG and END refer to byte
  3561. positions (as opposed to character positions), even in Mule.
  3562.  
  3563. arguments: (FILENAME &optional VISIT BEG END REPLACE)
  3564. Fwrite-region-internal
  3565. Write current region into specified file.
  3566. When called from a program, takes three arguments:
  3567. START, END and FILENAME.  START and END are buffer positions.
  3568. Optional fourth argument APPEND if non-nil means
  3569.   append to existing file contents (if any).
  3570. Optional fifth argument VISIT if t means
  3571.   set the last-save-file-modtime of buffer to this file's modtime
  3572.   and mark buffer not modified.
  3573. If VISIT is a string, it is a second file name;
  3574.   the output goes to FILENAME, but the buffer is marked as visiting VISIT.
  3575.   VISIT is also the file name to lock and unlock for clash detection.
  3576. If VISIT is neither t nor nil nor a string,
  3577.   that means do not print the "Wrote file" message.
  3578. Kludgy feature: if START is a string, then that string is written
  3579. to the file, instead of any buffer contents, and END is ignored.
  3580. If support for Mule exists in this Emacs, code conversion occurs according
  3581. to the value of `output-coding-system'.
  3582.  
  3583. arguments: (START END FILENAME &optional APPEND VISIT)
  3584. Fcar-less-than-car
  3585. Return t if (car A) is numerically less than (car B).
  3586.  
  3587. arguments: (A B)
  3588. Fencrypt-string
  3589. Encrypt STRING using KEY.
  3590.  
  3591. arguments: (STRING KEY)
  3592. Fdecrypt-string
  3593. Decrypt STRING using KEY.
  3594.  
  3595. arguments: (STRING KEY)
  3596. Fverify-visited-file-modtime
  3597. Return t if last mod time of BUF's visited file matches what BUF records.
  3598. This means that the file has not been changed since it was visited or saved.
  3599.  
  3600. arguments: (BUF)
  3601. Fclear-visited-file-modtime
  3602. Clear out records of last mod time of visited file.
  3603. Next attempt to save will certainly not complain of a discrepancy.
  3604.  
  3605. arguments: ()
  3606. Fvisited-file-modtime
  3607. Return the current buffer's recorded visited file modification time.
  3608. The value is a list of the form (HIGH . LOW), like the time values
  3609. that `file-attributes' returns.
  3610.  
  3611. arguments: ()
  3612. Fset-visited-file-modtime
  3613. Update buffer's recorded modification time from the visited file's time.
  3614. Useful if the buffer was not read from the file normally
  3615. or if the file itself has been changed for some known benign reason.
  3616. An argument specifies the modification time value to use
  3617. (instead of that of the visited file), in the form of a list
  3618. (HIGH . LOW) or (HIGH LOW).
  3619.  
  3620. arguments: (&optional TIME-LIST)
  3621. Fset-buffer-modtime
  3622. Update BUFFER's recorded modification time from the associated 
  3623. file's modtime, if there is an associated file. If not, use the 
  3624. current time. In either case, if the optional arg TIME is supplied,
  3625. it will be used if it is either an integer or a cons of two integers.
  3626.  
  3627. arguments: (BUF &optional IN-TIME)
  3628. Fdo-auto-save
  3629. Auto-save all buffers that need it.
  3630. This is all buffers that have auto-saving enabled
  3631. and are changed since last auto-saved.
  3632. Auto-saving writes the buffer into a file
  3633. so that your editing is not lost if the system crashes.
  3634. This file is not the file you visited; that changes only when you save.
  3635. Normally we run the normal hook `auto-save-hook' before saving.
  3636.  
  3637. Non-nil first argument means do not print any message if successful.
  3638. Non-nil second argument means save only current buffer.
  3639.  
  3640. arguments: (&optional NO-MESSAGE CURRENT-ONLY)
  3641. Fset-buffer-auto-saved
  3642. Mark current buffer as auto-saved with its current text.
  3643. No auto-save file will be written until the buffer changes again.
  3644.  
  3645. arguments: ()
  3646. Fclear-buffer-auto-save-failure
  3647. Clear any record of a recent auto-save failure in the current buffer.
  3648.  
  3649. arguments: ()
  3650. Frecent-auto-save-p
  3651. Return t if buffer has been auto-saved since last read in or saved.
  3652.  
  3653. arguments: ()
  3654. Vvms-stmlf-recfm
  3655. *Non-nil means write new files with record format `stmlf'.
  3656. nil means use format `var'.  This variable is meaningful only on VMS.Vfile-name-handler-alist
  3657. *Alist of elements (REGEXP . HANDLER) for file names handled specially.
  3658. If a file name matches REGEXP, then all I/O on that file is done by calling
  3659. HANDLER.
  3660.  
  3661. The first argument given to HANDLER is the name of the I/O primitive
  3662. to be handled; the remaining arguments are the arguments that were
  3663. passed to that primitive.  For example, if you do
  3664.     (file-exists-p FILENAME)
  3665. and FILENAME is handled by HANDLER, then HANDLER is called like this:
  3666.     (funcall HANDLER 'file-exists-p FILENAME)
  3667. The function `find-file-name-handler' checks this list for a handler
  3668. for its argument.Vafter-insert-file-functions
  3669. A list of functions to be called at the end of `insert-file-contents'.
  3670. Each is passed one argument, the number of bytes inserted.  It should return
  3671. the new byte count, and leave point the same.  If `insert-file-contents' is
  3672. intercepted by a handler from `file-name-handler-alist', that handler is
  3673. responsible for calling the after-insert-file-functions if appropriate.Vwrite-region-annotate-functions
  3674. A list of functions to be called at the start of `write-region'.
  3675. Each is passed two arguments, START and END as for `write-region'.
  3676. It should return a list of pairs (POSITION . STRING) of strings to be
  3677. effectively inserted at the specified positions of the file being written
  3678. (1 means to insert before the first byte written).  The POSITIONs must be
  3679. sorted into increasing order.  If there are several functions in the list,
  3680. the several lists are merged destructively.Vwrite-region-annotations-so-far
  3681. When an annotation function is called, this holds the previous annotations.
  3682. These are the annotations made by other annotation functions
  3683. that were already called.  See also `write-region-annotate-functions'.Vinhibit-file-name-handlers
  3684. A list of file name handlers that temporarily should not be used.
  3685. This applies only to the operation `inhibit-file-name-operation'.Vinhibit-file-name-operation
  3686. The operation for which `inhibit-file-name-handlers' is applicable.Vauto-save-list-file-name
  3687. File name in which we write a list of all auto save file names.Fdirectory-files
  3688. Return a list of names of files in DIRECTORY.
  3689. There are four optional arguments:
  3690. If FULL is non-nil, absolute pathnames of the files are returned.
  3691. If MATCH is non-nil, only pathnames containing that regexp are returned.
  3692. If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
  3693.  NOSORT is useful if you plan to sort the result yourself.
  3694. If FILES-ONLY is the symbol t, then only the "files" in the directory
  3695.  will be returned; subdirectories will be excluded.  If FILES-ONLY is not
  3696.  nil and not t, then only the subdirectories will be returned.  Otherwise,
  3697.  if FILES-ONLY is nil (the default) then both files and subdirectories will
  3698.  be returned.
  3699.  
  3700. arguments: (DIRNAME &optional FULL MATCH NOSORT FILES-ONLY)
  3701. Ffile-name-completion
  3702. Complete file name FILE in directory DIR.
  3703. Returns the longest string common to all filenames in DIR
  3704. that start with FILE.
  3705. If there is only one and FILE matches it exactly, returns t.
  3706. Returns nil if DIR contains no name starting with FILE.
  3707.  
  3708. Filenames which end with any member of `completion-ignored-extensions'
  3709. are not considered as possible completions for FILE unless there is no
  3710. other possible completion.  `completion-ignored-extensions' is not applied
  3711. to the names of directories.
  3712.  
  3713. arguments: (FILE DIRNAME)
  3714. Ffile-name-all-completions
  3715. Return a list of all completions of file name FILE in directory DIR.
  3716. These are all file names in directory DIR which begin with FILE.
  3717.  
  3718. Filenames which end with any member of `completion-ignored-extensions'
  3719. are not considered as possible completions for FILE unless there is no
  3720. other possible completion.  `completion-ignored-extensions' is not applied
  3721. to the names of directories.
  3722.  
  3723. arguments: (FILE DIRNAME)
  3724. Ffile-name-all-versions
  3725. Return a list of all versions of file name FILE in directory DIR.
  3726.  
  3727. arguments: (FILE DIRNAME)
  3728. Ffile-version-limit
  3729. Return the maximum number of versions allowed for FILE.
  3730. Returns nil if the file cannot be opened or if there is no version limit.
  3731.  
  3732. arguments: (FILENAME)
  3733. Ffile-attributes
  3734. Return a list of attributes of file FILENAME.
  3735. Value is nil if specified file cannot be opened.
  3736. Otherwise, list elements are:
  3737.  0. t for directory, string (name linked to) for symbolic link, or nil.
  3738.  1. Number of links to file.
  3739.  2. File uid.
  3740.  3. File gid.
  3741.  4. Last access time, as a list of two integers.
  3742.   First integer has high-order 16 bits of time, second has low 16 bits.
  3743.  5. Last modification time, likewise.
  3744.  6. Last status change time, likewise.
  3745.  7. Size in bytes. (-1, if number is out of range).
  3746.  8. File modes, as a string of ten letters or dashes as in ls -l.
  3747.  9. t iff file's gid would change if file were deleted and recreated.
  3748. 10. inode number.
  3749. 11. Device number.
  3750.  
  3751. If file does not exist, returns nil.
  3752.  
  3753. arguments: (FILENAME)
  3754. Vcompletion-ignored-extensions
  3755. *Completion ignores filenames ending in any string in this list.
  3756. This variable does not affect lists of possible completions,
  3757. but does affect the commands that actually do completions.
  3758. It is used by the functions `file-name-completion' and
  3759. `file-name-all-completions'.Fforward-char
  3760. Move point right ARG characters (left if ARG negative).
  3761. On reaching end of buffer, stop and signal error.
  3762. If BUFFER is nil, the current buffer is assumed.
  3763.  
  3764. arguments: (&optional ARG BUFFER)
  3765. Fbackward-char
  3766. Move point left ARG characters (right if ARG negative).
  3767. On attempt to pass beginning or end of buffer, stop and signal error.
  3768. If BUFFER is nil, the current buffer is assumed.
  3769.  
  3770. arguments: (&optional ARG BUFFER)
  3771. Fforward-line
  3772. Move ARG lines forward (backward if ARG is negative).
  3773. Precisely, if point is on line I, move to the start of line I + ARG.
  3774. If there isn't room, go as far as possible (no error).
  3775. Returns the count of lines left to move.  If moving forward,
  3776. that is ARG - number of lines moved; if backward, ARG + number moved.
  3777. With positive ARG, a non-empty line at the end counts as one line
  3778.   successfully moved (for the return value).
  3779. If BUFFER is nil, the current buffer is assumed.
  3780.  
  3781. arguments: (&optional ARG BUFFER)
  3782. Fbeginning-of-line
  3783. Move point to beginning of current line.
  3784. With argument ARG not nil or 1, move forward ARG - 1 lines first.
  3785. If scan reaches end of buffer, stop there without error.
  3786. If BUFFER is nil, the current buffer is assumed.
  3787.  
  3788. arguments: (&optional ARG BUFFER)
  3789. Fend-of-line
  3790. Move point to end of current line.
  3791. With argument ARG not nil or 1, move forward ARG - 1 lines first.
  3792. If scan reaches end of buffer, stop there without error.
  3793. If BUFFER is nil, the current buffer is assumed.
  3794.  
  3795. arguments: (&optional ARG BUFFER)
  3796. Fdelete-char
  3797. Delete the following ARG characters (previous, with negative arg).
  3798. Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
  3799. Interactively, ARG is the prefix arg, and KILLFLAG is set if
  3800. ARG was explicitly specified.
  3801.  
  3802. arguments: (ARG &optional KILLFLAG)
  3803. Fdelete-backward-char
  3804. Delete the previous ARG characters (following, with negative ARG).
  3805. Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
  3806. Interactively, ARG is the prefix arg, and KILLFLAG is set if
  3807. ARG was explicitly specified.
  3808.  
  3809. arguments: (ARG &optional KILLFLAG)
  3810. Fself-insert-command
  3811. Insert the character you type.
  3812. Whichever character you type to run this command is inserted.
  3813.  
  3814. arguments: (ARG)
  3815. Fnewline
  3816. Insert a newline.  With arg, insert that many newlines.
  3817. In Auto Fill mode, if no numeric arg, break the preceding line if it's long.
  3818.  
  3819. arguments: (&optional ARG1)
  3820. Fself-insert-internal
  3821. Invoke `self-insert-command' as if CH is entered from keyboard.
  3822.  
  3823. arguments: (CH)
  3824. Vblink-paren-function
  3825. Function called, if non-nil, whenever a close parenthesis is inserted.
  3826. More precisely, a char with closeparen syntax is self-inserted.Fcase-table-p
  3827. Return t iff ARG is a case table.
  3828. See `set-case-table' for more information on these data structures.
  3829.  
  3830. arguments: (TABLE)
  3831. Fcurrent-case-table
  3832. Return the case table of the current buffer.
  3833.  
  3834. arguments: ()
  3835. Fstandard-case-table
  3836. Return the standard case table.
  3837. This is the one used for new buffers.
  3838.  
  3839. arguments: ()
  3840. Fset-case-table
  3841. Select a new case table for the current buffer.
  3842. A case table is a list (DOWNCASE UPCASE CANONICALIZE EQUIVALENCES)
  3843.  where each element is either nil or a string of length 256.
  3844. DOWNCASE maps each character to its lower-case equivalent.
  3845. UPCASE maps each character to its upper-case equivalent;
  3846.  if lower and upper case characters are in 1-1 correspondence,
  3847.  you may use nil and the upcase table will be deduced from DOWNCASE.
  3848. CANONICALIZE maps each character to a canonical equivalent;
  3849.  any two characters that are related by case-conversion have the same
  3850.  canonical equivalent character; it may be nil, in which case it is
  3851.  deduced from DOWNCASE and UPCASE.
  3852. EQUIVALENCES is a map that cyclicly permutes each equivalence class
  3853.  (of characters with the same canonical equivalent); it may be nil,
  3854.  in which case it is deduced from CANONICALIZE.
  3855.  
  3856. arguments: (TABLE)
  3857. Fset-standard-case-table
  3858. Select a new standard case table for new buffers.
  3859. See `set-case-table' for more info on case tables.
  3860.  
  3861. arguments: (TABLE)
  3862. Vascii-downcase-table
  3863. String mapping ASCII characters to lowercase equivalents.Vascii-upcase-table
  3864. String mapping ASCII characters to uppercase equivalents.Fupcase
  3865. Convert argument to upper case and return that.
  3866. The argument may be a character or string.  The result has the same type.
  3867. The argument object is not altered.  See also `capitalize'.
  3868. Optional second arg BUFFER specifies which buffer's case tables to use,
  3869.  and defaults to the current buffer.
  3870.  
  3871. arguments: (OBJ &optional BUFFER)
  3872. Fdowncase
  3873. Convert argument to lower case and return that.
  3874. The argument may be a character or string.  The result has the same type.
  3875. The argument object is not altered.
  3876. Optional second arg BUFFER specifies which buffer's case tables to use,
  3877.  and defaults to the current buffer.
  3878.  
  3879. arguments: (OBJ &optional BUFFER)
  3880. Fcapitalize
  3881. Convert argument to capitalized form and return that.
  3882. This means that each word's first character is upper case
  3883. and the rest is lower case.
  3884. The argument may be a character or string.  The result has the same type.
  3885. The argument object is not altered.
  3886. Optional second arg BUFFER specifies which buffer's case tables to use,
  3887.  and defaults to the current buffer.
  3888.  
  3889. arguments: (OBJ &optional BUFFER)
  3890. Fupcase-region
  3891. Convert the region to upper case.  In programs, wants two arguments.
  3892. These arguments specify the starting and ending character numbers of
  3893.  the region to operate on.  When used as a command, the text between
  3894.  point and the mark is operated on.
  3895. See also `capitalize-region'.
  3896. Optional third arg BUFFER defaults to the current buffer.
  3897.  
  3898. arguments: (B E &optional BUFFER)
  3899. Fdowncase-region
  3900. Convert the region to lower case.  In programs, wants two arguments.
  3901. These arguments specify the starting and ending character numbers of
  3902.  the region to operate on.  When used as a command, the text between
  3903.  point and the mark is operated on.
  3904. Optional third arg BUFFER defaults to the current buffer.
  3905.  
  3906. arguments: (B E &optional BUFFER)
  3907. Fcapitalize-region
  3908. Convert the region to capitalized form.
  3909. Capitalized form means each word's first character is upper case
  3910.  and the rest of it is lower case.
  3911. In programs, give two arguments, the starting and ending
  3912.  character positions to operate on.
  3913. Optional third arg BUFFER defaults to the current buffer.
  3914.  
  3915. arguments: (B E &optional BUFFER)
  3916. Fupcase-word
  3917. Convert following word (or ARG words) to upper case, moving over.
  3918. With negative argument, convert previous words but do not move.
  3919. See also `capitalize-word'.
  3920. Optional second arg BUFFER defaults to the current buffer.
  3921.  
  3922. arguments: (ARG &optional BUFFER)
  3923. Fdowncase-word
  3924. Convert following word (or ARG words) to lower case, moving over.
  3925. With negative argument, convert previous words but do not move.
  3926. Optional second arg BUFFER defaults to the current buffer.
  3927.  
  3928. arguments: (ARG &optional BUFFER)
  3929. Fcapitalize-word
  3930. Capitalize the following word (or ARG words), moving over.
  3931. This gives the word(s) a first character in upper case
  3932.  and the rest lower case.
  3933. With negative argument, capitalize previous words but do not move.
  3934. Optional second arg BUFFER defaults to the current buffer.
  3935.  
  3936. arguments: (ARG &optional BUFFER)
  3937. Fcurrent-column
  3938. Return the horizontal position of point.  Beginning of line is column 0.
  3939. This is calculated by adding together the widths of all the displayed
  3940.  representations of the character between the start of the previous line
  3941.  and point. (e.g. control characters will have a width of 2 or 4, tabs
  3942.  will have a variable width.)
  3943. Ignores finite width of frame, which means that this function may return
  3944.  values greater than (frame-width).
  3945. Whether the line is visible (if `selective-display' is t) has no effect;
  3946.  however, ^M is treated as end of line when `selective-display' is t.
  3947. If BUFFER is nil, the current buffer is assumed.
  3948.  
  3949. arguments: (&optional BUFFER)
  3950. Findent-to
  3951. Indent from point with tabs and spaces until COLUMN is reached.
  3952. Optional second argument MIN says always do at least MIN spaces
  3953.  even if that goes past COLUMN; by default, MIN is zero.
  3954. If BUFFER is nil, the current buffer is assumed.
  3955.  
  3956. arguments: (COL &optional MINIMUM BUFFER)
  3957. Fcurrent-indentation
  3958. Return the indentation of the current line.
  3959. This is the horizontal position of the character
  3960. following any initial whitespace.
  3961.  
  3962. arguments: (&optional BUFFER)
  3963. Fmove-to-column
  3964. Move point to column COLUMN in the current line.
  3965. The column of a character is calculated by adding together the widths
  3966. as displayed of the previous characters in the line.
  3967. This function ignores line-continuation;
  3968. there is no upper limit on the column number a character can have
  3969. and horizontal scrolling has no effect.
  3970.  
  3971. If specified column is within a character, point goes after that character.
  3972. If it's past end of line, point goes to end of line.
  3973.  
  3974. A non-nil second (optional) argument FORCE means, if the line
  3975. is too short to reach column COLUMN then add spaces/tabs to get there,
  3976. and if COLUMN is in the middle of a tab character, change it to spaces.
  3977. Returns the actual column that it moved to.
  3978.  
  3979. arguments: (COLUMN &optional FORCE BUFFER)
  3980. Fvertical-motion
  3981. Move to start of frame line LINES lines down.
  3982. If LINES is negative, this is moving up.
  3983. Sets point to position found; this may be start of line
  3984.  or just the start of a continuation line.
  3985. Returns number of lines moved; may be closer to zero than LINES
  3986.  if beginning or end of buffer was reached.
  3987. Optional second argument is WINDOW to move in.
  3988.  
  3989. arguments: (LINES &optional WINDOW)
  3990. Vindent-tabs-mode
  3991. *Indentation can insert tabs if this is non-nil.
  3992. Setting this variable automatically makes it local to the current buffer.Flooking-at
  3993. Return t if text after point matches regular expression PAT.
  3994. This function modifies the match data that `match-beginning',
  3995. `match-end' and `match-data' access; save and restore the match
  3996. data if you want to preserve them.
  3997. If support for Mule regexps was compiled into this Emacs, and optional
  3998. second arg BACK is non-nil and PAT is a pre-compiled pattern,
  3999. PAT is looked backward from point.
  4000.  
  4001. arguments: (STRING &optional BACK)
  4002. Fstring-match
  4003. Return index of start of first match for REGEXP in STRING, or nil.
  4004. If third arg START is non-nil, start search at that index in STRING.
  4005. For index of first char beyond the match, do (match-end 0).
  4006. `match-end' and `match-beginning' also give indices of substrings
  4007. matched by parenthesis constructs in the pattern.
  4008.  
  4009. arguments: (REGEXP STRING &optional START)
  4010. Fskip-chars-forward
  4011. Move point forward, stopping before a char not in CHARS, or at position LIM.
  4012. CHARS is like the inside of a `[...]' in a regular expression
  4013. except that `]' is never special and `\' quotes `^', `-' or `\'.
  4014. Thus, with arg "a-zA-Z", this skips letters stopping before first nonletter.
  4015. With arg "^a-zA-Z", skips nonletters stopping before first letter.
  4016. Returns the distance traveled, either zero or positive.
  4017.  
  4018. Optional argument BUFFER defaults to the current buffer.
  4019.  
  4020. arguments: (CHARS &optional LIM BUFFER)
  4021. Fskip-chars-backward
  4022. Move point backward, stopping after a char not in CHARS, or at position LIM.
  4023. See `skip-chars-forward' for details.
  4024. Returns the distance traveled, either zero or negative.
  4025.  
  4026. Optional argument BUFFER defaults to the current buffer.
  4027.  
  4028. arguments: (CHARS &optional LIM BUFFER)
  4029. Fskip-syntax-forward
  4030. Move point forward across chars in specified syntax classes.
  4031. SYNTAX is a string of syntax code characters.
  4032. Stop before a char whose syntax is not in SYNTAX, or at position LIM.
  4033. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX.
  4034. This function returns the distance traveled, either zero or positive.
  4035.  
  4036. Optional argument BUFFER defaults to the current buffer.
  4037.  
  4038. arguments: (SYNTAX &optional LIM BUFFER)
  4039. Fskip-syntax-backward
  4040. Move point backward across chars in specified syntax classes.
  4041. SYNTAX is a string of syntax code characters.
  4042. Stop on reaching a char whose syntax is not in SYNTAX, or at position LIM.
  4043. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX.
  4044. This function returns the distance traveled, either zero or negative.
  4045.  
  4046. Optional argument BUFFER defaults to the current buffer.
  4047.  
  4048. arguments: (SYNTAX &optional LIM BUFFER)
  4049. Fsearch-backward
  4050. Search backward from point for STRING.
  4051. Set point to the beginning of the occurrence found, and return point.
  4052. An optional second argument bounds the search; it is a buffer position.
  4053. The match found must not extend before that position.
  4054. Optional third argument, if t, means if fail just return nil (no error).
  4055.  If not nil and not t, position at limit of search and return nil.
  4056. Optional fourth argument is repeat count--search for successive occurrences.
  4057. See also the functions `match-beginning', `match-end' and `replace-match'.
  4058.  
  4059. arguments: (STRING &optional BOUND NO-ERROR COUNT)
  4060. Fsearch-forward
  4061. Search forward from point for STRING.
  4062. Set point to the end of the occurrence found, and return point.
  4063. An optional second argument bounds the search; it is a buffer position.
  4064. The match found must not extend after that position.  nil is equivalent
  4065.   to (point-max).
  4066. Optional third argument, if t, means if fail just return nil (no error).
  4067.   If not nil and not t, move to limit of search and return nil.
  4068. Optional fourth argument is repeat count--search for successive occurrences.
  4069. See also the functions `match-beginning', `match-end' and `replace-match'.
  4070.  
  4071. arguments: (STRING &optional BOUND NO-ERROR COUNT)
  4072. Fword-search-backward
  4073. Search backward from point for STRING, ignoring differences in punctuation.
  4074. Set point to the beginning of the occurrence found, and return point.
  4075. An optional second argument bounds the search; it is a buffer position.
  4076. The match found must not extend before that position.
  4077. Optional third argument, if t, means if fail just return nil (no error).
  4078.   If not nil and not t, move to limit of search and return nil.
  4079. Optional fourth argument is repeat count--search for successive occurrences.
  4080.  
  4081. arguments: (STRING &optional BOUND NO-ERROR COUNT)
  4082. Fword-search-forward
  4083. Search forward from point for STRING, ignoring differences in punctuation.
  4084. Set point to the end of the occurrence found, and return point.
  4085. An optional second argument bounds the search; it is a buffer position.
  4086. The match found must not extend after that position.
  4087. Optional third argument, if t, means if fail just return nil (no error).
  4088.   If not nil and not t, move to limit of search and return nil.
  4089. Optional fourth argument is repeat count--search for successive occurrences.
  4090.  
  4091. arguments: (STRING &optional BOUND NO-ERROR COUNT)
  4092. Fre-search-backward
  4093. Search backward from point for match for regular expression REGEXP.
  4094. Set point to the beginning of the match, and return point.
  4095. The match found is the one starting last in the buffer
  4096. and yet ending before the origin of the search.
  4097. An optional second argument bounds the search; it is a buffer position.
  4098. The match found must start at or after that position.
  4099. Optional third argument, if t, means if fail just return nil (no error).
  4100.   If not nil and not t, move to limit of search and return nil.
  4101. Optional fourth argument is repeat count--search for successive occurrences.
  4102. See also the functions `match-beginning', `match-end' and `replace-match'.
  4103.  
  4104. arguments: (REGEXP &optional BOUND NO-ERROR COUNT)
  4105. Fre-search-forward
  4106. Search forward from point for regular expression REGEXP.
  4107. Set point to the end of the occurrence found, and return point.
  4108. An optional second argument bounds the search; it is a buffer position.
  4109. The match found must not extend after that position.
  4110. Optional third argument, if t, means if fail just return nil (no error).
  4111.   If not nil and not t, move to limit of search and return nil.
  4112. Optional fourth argument is repeat count--search for successive occurrences.
  4113. See also the functions `match-beginning', `match-end' and `replace-match'.
  4114.  
  4115. arguments: (REGEXP &optional BOUND NO-ERROR COUNT)
  4116. Freplace-match
  4117. Replace text matched by last search with NEWTEXT.
  4118. If second arg FIXEDCASE is non-nil, do not alter case of replacement text.
  4119. Otherwise maybe capitalize the whole text, or maybe just word initials,
  4120. based on the replaced text.
  4121. If the replaced text has only capital letters
  4122. and has at least one multiletter word, convert NEWTEXT to all caps.
  4123. If the replaced text has at least one word starting with a capital letter,
  4124. then capitalize each word in NEWTEXT.
  4125.  
  4126. If third arg LITERAL is non-nil, insert NEWTEXT literally.
  4127. Otherwise treat `\' as special:
  4128.   `\&' in NEWTEXT means substitute original matched text.
  4129.   `\N' means substitute what matched the Nth `\(...\)'.
  4130.        If Nth parens didn't match, substitute nothing.
  4131.   `\\' means insert one `\'.
  4132.   `\u' means upcase the next character.
  4133.   `\l' means downcase the next character.
  4134.   `\U' means begin upcasing all following characters.
  4135.   `\L' means begin downcasing all following characters.
  4136.   `\E' means terminate the effect of any `\U' or `\L'.
  4137.   Case changes made with `\u', `\l', `\U', and `\L' override
  4138.   all other case changes that may be made in the replaced text.
  4139. FIXEDCASE and LITERAL are optional arguments.
  4140. Leaves point at end of replacement text.
  4141.  
  4142. arguments: (NEWTEXT &optional FIXEDCASE LITERAL)
  4143. Fmatch-beginning
  4144. Return position of start of text matched by last regexp search.
  4145. NUM, specifies which parenthesized expression in the last regexp.
  4146.  Value is nil if NUMth pair didn't match, or there were less than NUM pairs.
  4147. Zero means the entire text matched by the whole regexp or whole string.
  4148.  
  4149. arguments: (NUM)
  4150. Fmatch-end
  4151. Return position of end of text matched by last regexp search.
  4152. NUM specifies which parenthesized expression in the last regexp.
  4153.  Value is nil if NUMth pair didn't match, or there were less than NUM pairs.
  4154. Zero means the entire text matched by the whole regexp or whole string.
  4155.  
  4156. arguments: (NUM)
  4157. Fmatch-data
  4158. Return a list containing all info on what the last regexp search matched.
  4159. Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'.
  4160. All the elements are markers or nil (nil if the Nth pair didn't match)
  4161. if the last match was on a buffer; integers or nil if a string was matched.
  4162. Use `store-match-data' to reinstate the data in this list.
  4163.  
  4164. arguments: ()
  4165. Fstore-match-data
  4166. Set internal data on last search match from elements of LIST.
  4167. LIST should have been created by calling `match-data' previously.
  4168.  
  4169. arguments: (LIST)
  4170. Fregexp-quote
  4171. Return a regexp string which matches exactly STRING and nothing else.
  4172.  
  4173. arguments: (STR)
  4174. Fre-compile
  4175. Compile REGEXP by GNU Emacs original regexp compiler,
  4176. and return information of the compiled code by a vector of length 11:
  4177.  [ COMPILED-PATTERN (string)
  4178.    RE-NSUB REGS-ALLOCATED CAN-BE-NULL NEWLINE-ANCHOR (integers)
  4179.    NO-SUB NOT-BOL NOT-EOL SYNTAX (integers)
  4180.    FASTMAP TRANSLATE (string) ].
  4181. If REGEXP is nil, just return the information of previously compiled code.
  4182.  
  4183. arguments: (REGEXP)
  4184. Vforward-word-regexp
  4185. *Regular expression to be used in forward-word.Vbackward-word-regexp
  4186. *Regular expression to be used in backward-word.Vregexp-version
  4187. version number of system internal regexp compiler and interpreter.Fundo-boundary
  4188. Mark a boundary between units of undo.
  4189. An undo command will stop at this point,
  4190. but another undo command will undo to the previous boundary.
  4191.  
  4192. arguments: ()
  4193. Fprimitive-undo
  4194. Undo COUNT records from the front of the list LIST.
  4195. Return what remains of the list.
  4196.  
  4197. arguments: (COUNT LIST)
  4198. Fcons
  4199. Create a new cons, give it CAR and CDR as components, and return it.
  4200.  
  4201. arguments: (CAR CDR)
  4202. Flist
  4203. Return a newly created list with specified arguments as elements.
  4204. Any number of arguments, even zero arguments, are allowed.Fmake-list
  4205. Return a newly created list of length LENGTH, with each element being INIT.
  4206.  
  4207. arguments: (LENGTH INIT)
  4208. Fmake-vector
  4209. Return a newly created vector of length LENGTH, with each element being INIT.
  4210. See also the function `vector'.
  4211.  
  4212. arguments: (LENGTH INIT)
  4213. Fvector
  4214. Return a newly created vector with specified arguments as elements.
  4215. Any number of arguments, even zero arguments, are allowed.Fmake-byte-code
  4216. Create a compiled-function object.
  4217. Usage: (arglist instructions constants stack-size
  4218.     &optional doc-string interactive-spec)
  4219. Note that, unlike all other emacs-lisp functions, calling this with five
  4220. arguments is NOT the same as calling it with six arguments, the last of
  4221. which is nil.  If the INTERACTIVE arg is specified as nil, then that means
  4222. that this function was defined with `(interactive)'.  If the arg is not
  4223. specified, then that means the function is not interactive.
  4224. This is terrible behavior which is retained for compatibility with old
  4225. `.elc' files which expected these semantics.Fmake-symbol
  4226. Return a newly allocated uninterned symbol whose name is NAME.
  4227. Its value and function definition are void, and its property list is nil.
  4228.  
  4229. arguments: (STR)
  4230. Fmake-marker
  4231. Return a newly allocated marker which does not point at any place.
  4232.  
  4233. arguments: ()
  4234. Fmake-string
  4235. Return a newly created string of length LENGTH, with each element being INIT.
  4236. LENGTH must be an integer and INIT must be a character.
  4237.  
  4238. arguments: (LENGTH INIT)
  4239. Fpurecopy
  4240. Make a copy of OBJECT in pure storage.
  4241. Recursively copies contents of vectors and cons cells.
  4242. Does not copy symbols.
  4243.  
  4244. arguments: (OBJ)
  4245. Fgarbage-collect
  4246. Reclaim storage for Lisp objects no longer needed.
  4247. Returns info on amount of space in use:
  4248.  ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS)
  4249.   (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS
  4250.   PLIST) 
  4251.   where `PLIST' is a list of alternating keyword/value pairs providing
  4252.   more detailed information.
  4253. Garbage collection happens automatically if you cons more than
  4254. `gc-cons-threshold' bytes of Lisp data since previous garbage collection.
  4255.  
  4256. arguments: ()
  4257. Fconsing-since-gc
  4258. Return the number of bytes consed since the last garbage collection.
  4259.  
  4260. arguments: ()
  4261. Fmemory-limit
  4262. Return the address of the last byte Emacs has allocated, divided by 1024.
  4263. This may be helpful in debugging Emacs's memory usage.
  4264. The value is divided by 1024 to make sure it will fit in a lisp integer.
  4265.  
  4266. arguments: ()
  4267. Vgc-cons-threshold
  4268. *Number of bytes of consing between garbage collections.
  4269. Garbage collection can happen automatically once this many bytes have been
  4270. allocated since the last garbage collection.  All data types count.
  4271.  
  4272. Garbage collection happens automatically when `eval' or `funcall' are
  4273. called.  (Note that `funcall' is called implicitly as part of evaluation.)
  4274. By binding this temporarily to a large number, you can effectively
  4275. prevent garbage collection during a part of the program.Vpure-bytes-used
  4276. Number of bytes of sharable Lisp data allocated so far.Vdata-bytes-used
  4277. Number of bytes of unshared memory allocated in this session.Vdata-bytes-free
  4278. Number of bytes of unshared memory remaining available in this session.Vpurify-flag
  4279. Non-nil means loading Lisp code in order to dump an executable.
  4280. This means that certain objects should be allocated in shared (pure) space.Vpre-gc-hook
  4281. Function or functions to be run just before each garbage collection.
  4282. Interrupts, garbage collection, and errors are inhibited while this hook
  4283. runs, so be extremely careful in what you add here.  In particular, avoid
  4284. consing, and do not interact with the user.Vpost-gc-hook
  4285. Function or functions to be run just after each garbage collection.
  4286. Interrupts, garbage collection, and errors are inhibited while this hook
  4287. runs, so be extremely careful in what you add here.  In particular, avoid
  4288. consing, and do not interact with the user.Vgc-message
  4289. What to display to indicate that a garbage collection is in progress.
  4290. If this is a string, it is printed in the echo area.
  4291. If this is a cursor object, the mouse pointer of the selected frame is
  4292. changed to that cursor for the duration of the garbage collection.
  4293. See the variable `x-gc-pointer-shape', which is used to control this.Fwrong-type-argument
  4294. Signal an error until the correct type value is given by the user.
  4295. This function loops, signalling a continuable `wrong-type-argument' error
  4296. with PREDICATE and VALUE as the data associated with the error and then
  4297. calling PREDICATE on the returned value, until the value gotten satisfies
  4298. PREDICATE.  At that point, the gotten value is returned.
  4299.  
  4300. arguments: (PREDICATE VALUE)
  4301. Feq
  4302. T if the two args are the same Lisp object.
  4303.  
  4304. arguments: (OBJ1 OBJ2)
  4305. Fnull
  4306. T if OBJECT is nil.
  4307.  
  4308. arguments: (OBJECT)
  4309. Fconsp
  4310. T if OBJECT is a cons cell.
  4311.  
  4312. arguments: (OBJECT)
  4313. Fatom
  4314. T if OBJECT is not a cons cell.  This includes nil.
  4315.  
  4316. arguments: (OBJECT)
  4317. Flistp
  4318. T if OBJECT is a list.  This includes nil.
  4319.  
  4320. arguments: (OBJECT)
  4321. Fnlistp
  4322. T if OBJECT is not a list.  Lists include nil.
  4323.  
  4324. arguments: (OBJECT)
  4325. Fsymbolp
  4326. T if OBJECT is a symbol.
  4327.  
  4328. arguments: (OBJECT)
  4329. Fkeywordp
  4330. T if OBJECT is a keyword.
  4331.  
  4332. arguments: (OBJECT)
  4333. Fvectorp
  4334. T if OBJECT is a vector.
  4335.  
  4336. arguments: (OBJECT)
  4337. Fstringp
  4338. T if OBJECT is a string.
  4339.  
  4340. arguments: (OBJECT)
  4341. Farrayp
  4342. T if OBJECT is an array (string or vector).
  4343.  
  4344. arguments: (OBJECT)
  4345. Fsequencep
  4346. T if OBJECT is a sequence (list or array).
  4347.  
  4348. arguments: (OBJECT)
  4349. Fmarkerp
  4350. T if OBJECT is a marker (editor pointer).
  4351.  
  4352. arguments: (OBJECT)
  4353. Fsubrp
  4354. T if OBJECT is a built-in function.
  4355.  
  4356. arguments: (OBJECT)
  4357. Fsubr-min-args
  4358. Return minimum number of args built-in function SUBR may be called with.
  4359.  
  4360. arguments: (SUBR)
  4361. Fsubr-max-args
  4362. Return maximum number of args built-in function SUBR may be called with,
  4363. or nil if it takes an arbitrary number of arguments (or is a special form).
  4364.  
  4365. arguments: (SUBR)
  4366. Fcompiled-function-p
  4367. t if OBJECT is a byte-compiled function object.
  4368.  
  4369. arguments: (OBJECT)
  4370. Fcharacterp
  4371. t if OBJECT is a character.
  4372. A character is an integer that can be inserted into a buffer with
  4373. `insert-char'.  If Mule support was compiled in, only certain integers
  4374. are valid characters.  Otherwise, all integers are considered valid
  4375. characters and are modded with 256 to get the actual character to use.
  4376.  
  4377. arguments: (OBJECT)
  4378. Fchar-or-string-p
  4379. t if OBJECT is a character or a string.
  4380.  
  4381. arguments: (OBJECT)
  4382. Fintegerp
  4383. t if OBJECT is an integer.
  4384.  
  4385. arguments: (OBJECT)
  4386. Finteger-or-marker-p
  4387. t if OBJECT is an integer or a marker (editor pointer).
  4388.  
  4389. arguments: (OBJECT)
  4390. Fnatnump
  4391. t if OBJECT is a nonnegative integer.
  4392.  
  4393. arguments: (OBJECT)
  4394. Fnumberp
  4395. t if OBJECT is a number (floating point or integer).
  4396.  
  4397. arguments: (OBJECT)
  4398. Fnumber-or-marker-p
  4399. t if OBJECT is a number or a marker.
  4400.  
  4401. arguments: (OBJECT)
  4402. Ffloatp
  4403. t if OBJECT is a floating point number.
  4404.  
  4405. arguments: (OBJECT)
  4406. Ftype-of
  4407. Return a symbol representing the type of OBJECT.
  4408.  
  4409. arguments: (OBJECT)
  4410. Fcar
  4411. Return the car of CONSCELL.  If arg is nil, return nil.
  4412. Error if arg is not nil and not a cons cell.  See also `car-safe'.
  4413.  
  4414. arguments: (CONSCELL)
  4415. Fcar-safe
  4416. Return the car of OBJECT if it is a cons cell, or else nil.
  4417.  
  4418. arguments: (OBJECT)
  4419. Fcdr
  4420. Return the cdr of CONSCELL.  If arg is nil, return nil.
  4421. Error if arg is not nil and not a cons cell.  See also `cdr-safe'.
  4422.  
  4423. arguments: (CONSCELL)
  4424. Fcdr-safe
  4425. Return the cdr of OBJECT if it is a cons cell, or else  nil.
  4426.  
  4427. arguments: (OBJECT)
  4428. Fsetcar
  4429. Set the car of CONSCELL to be NEWCAR.  Returns NEWCAR.
  4430.  
  4431. arguments: (CONSCELL NEWCAR)
  4432. Fsetcdr
  4433. Set the cdr of CONSCELL to be NEWCDR.  Returns NEWCDR.
  4434.  
  4435. arguments: (CONSCELL NEWCDR)
  4436. Findirect-function
  4437. Return the function at the end of OBJECT's function chain.
  4438. If OBJECT is a symbol, follow all function indirections and return
  4439. the final function binding.
  4440. If OBJECT is not a symbol, just return it.
  4441. Signal a void-function error if the final symbol is unbound.
  4442. Signal a cyclic-function-indirection error if there is a loop in the
  4443. function chain of symbols.
  4444.  
  4445. arguments: (OBJECT)
  4446. Faref
  4447. Return the element of ARRAY at index INDEX.
  4448. ARRAY may be a vector or a string, or a byte-code object.  INDEX starts at 0.
  4449.  
  4450. arguments: (ARRAY INDEX)
  4451. Faset
  4452. Store into the element of ARRAY at index IDX the value NEWVAL.
  4453. ARRAY may be a vector or a string.  IDX starts at 0.
  4454.  
  4455. arguments: (ARRAY IDX NEWVAL)
  4456. Fcompiled-function-instructions
  4457. Return the byte-opcode string of the compiled-function object.
  4458.  
  4459. arguments: (FUNCTION)
  4460. Fcompiled-function-constants
  4461. Return the constants vector of the compiled-function object.
  4462.  
  4463. arguments: (FUNCTION)
  4464. Fcompiled-function-stack-depth
  4465. Return the max stack depth of the compiled-function object.
  4466.  
  4467. arguments: (FUNCTION)
  4468. Fcompiled-function-arglist
  4469. Return the argument list of the compiled-function object.
  4470.  
  4471. arguments: (FUNCTION)
  4472. Fcompiled-function-interactive
  4473. Return the interactive spec of the compiled-function object, or nil.
  4474.  
  4475. arguments: (FUNCTION)
  4476. Fcompiled-function-domain
  4477. Return the domain of the compiled-function object, or nil.
  4478. This is only meaningful if I18N3 was enabled when emacs was compiled.
  4479.  
  4480. arguments: (FUNCTION)
  4481. F=
  4482. T if two args, both numbers or markers, are equal.
  4483.  
  4484. arguments: (NUM1 NUM2)
  4485. F<
  4486. T if first arg is less than second arg.  Both must be numbers or markers.
  4487.  
  4488. arguments: (NUM1 NUM2)
  4489. F>
  4490. T if first arg is greater than second arg.  Both must be numbers or markers.
  4491.  
  4492. arguments: (NUM1 NUM2)
  4493. F<=
  4494. T if first arg is less than or equal to second arg.
  4495. Both must be numbers or markers.
  4496.  
  4497. arguments: (NUM1 NUM2)
  4498. F>=
  4499. T if first arg is greater than or equal to second arg.
  4500. Both must be numbers or markers.
  4501.  
  4502. arguments: (NUM1 NUM2)
  4503. F/=
  4504. T if first arg is not equal to second arg.  Both must be numbers or markers.
  4505.  
  4506. arguments: (NUM1 NUM2)
  4507. Fzerop
  4508. T if NUMBER is zero.
  4509.  
  4510. arguments: (NUMBER)
  4511. Fnumber-to-string
  4512. Convert NUM to a string by printing it in decimal.
  4513. Uses a minus sign if negative.
  4514. NUM may be an integer or a floating point number.
  4515.  
  4516. arguments: (NUM)
  4517. Fstring-to-number
  4518. Convert STRING to a number by parsing it as a decimal number.
  4519. This parses both integers and floating point numbers.
  4520. It ignores leading spaces and tabs.
  4521.  
  4522. arguments: (STRING)
  4523. F+
  4524. Return sum of any number of arguments, which are numbers or markers.F-
  4525. Negate number or subtract numbers or markers.
  4526. With one arg, negates it.  With more than one arg,
  4527. subtracts all but the first from the first.F*
  4528. Return product of any number of arguments, which are numbers or markers.F/
  4529. Return first argument divided by all the remaining arguments.
  4530. The arguments must be numbers or markers.F%
  4531. Return remainder of first arg divided by second.
  4532. Both must be integers or markers.
  4533.  
  4534. arguments: (NUM1 NUM2)
  4535. Fmod
  4536. Return X modulo Y.
  4537. The result falls between zero (inclusive) and Y (exclusive).
  4538. Both X and Y must be numbers or markers.
  4539. If either argument is a float, a float will be returned.
  4540.  
  4541. arguments: (X Y)
  4542. Fmax
  4543. Return largest of all the arguments (which must be numbers or markers).
  4544. The value is always a number; markers are converted to numbers.Fmin
  4545. Return smallest of all the arguments (which must be numbers or markers).
  4546. The value is always a number; markers are converted to numbers.Flogand
  4547. Return bitwise-and of all the arguments.
  4548. Arguments may be integers, or markers converted to integers.Flogior
  4549. Return bitwise-or of all the arguments.
  4550. Arguments may be integers, or markers converted to integers.Flogxor
  4551. Return bitwise-exclusive-or of all the arguments.
  4552. Arguments may be integers, or markers converted to integers.Fash
  4553. Return VALUE with its bits shifted left by COUNT.
  4554. If COUNT is negative, shifting is actually to the right.
  4555. In this case, the sign bit is duplicated.
  4556.  
  4557. arguments: (VALUE COUNT)
  4558. Flsh
  4559. Return VALUE with its bits shifted left by COUNT.
  4560. If COUNT is negative, shifting is actually to the right.
  4561. In this case,  zeros are shifted in on the left.
  4562.  
  4563. arguments: (VALUE COUNT)
  4564. F1+
  4565. Return NUMBER plus one.  NUMBER may be a number or a marker.
  4566. Markers are converted to integers.
  4567.  
  4568. arguments: (NUMBER)
  4569. F1-
  4570. Return NUMBER minus one.  NUMBER may be a number or a marker.
  4571. Markers are converted to integers.
  4572.  
  4573. arguments: (NUMBER)
  4574. Flognot
  4575. Return the bitwise complement of NUMBER.  NUMBER must be an integer.
  4576.  
  4577. arguments: (NUMBER)
  4578. Fdocumentation
  4579. Return the documentation string of FUNCTION.
  4580. Unless a non-nil second argument is given, the
  4581. string is passed through `substitute-command-keys'.
  4582.  
  4583. arguments: (FUNCTION &optional RAW)
  4584. Fdocumentation-property
  4585. Return the documentation string that is SYMBOL's PROP property.
  4586. This is like `get', but it can refer to strings stored in the
  4587. `exec-directory/DOC' file; and if the value is a string, it is passed
  4588. through `substitute-command-keys'.  A non-nil third argument avoids this
  4589. translation.
  4590.  
  4591. arguments: (SYM PROP &optional RAW)
  4592. FSnarf-documentation
  4593. Used during Emacs initialization, before dumping runnable Emacs,
  4594. to find pointers to doc strings stored in `.../lib-src/DOC' and
  4595. record them in function definitions.
  4596. One arg, FILENAME, a string which does not include a directory.
  4597. The file is written to `../lib-src', and later found in `exec-directory'
  4598. when doc strings are referred to in the dumped Emacs.
  4599.  
  4600. arguments: (FILENAME)
  4601. FVerify-documentation
  4602. Used to make sure everything went well with Snarf-documentation.
  4603. Writes to stderr if not.
  4604.  
  4605. arguments: ()
  4606. Fsubstitute-command-keys
  4607. Substitute key descriptions for command names in STRING.
  4608. Return a new string which is STRING with substrings of the form \=\[COMMAND]
  4609. replaced by either:  a keystroke sequence that will invoke COMMAND,
  4610. or "M-x COMMAND" if COMMAND is not on any keys.
  4611. Substrings of the form \=\{MAPVAR} are replaced by summaries
  4612. (made by describe-bindings) of the value of MAPVAR, taken as a keymap.
  4613. Substrings of the form \=\<MAPVAR> specify to use the value of MAPVAR
  4614. as the keymap for future \=\[COMMAND] substrings.
  4615. \=\= quotes the following character and is discarded;
  4616. thus, \=\=\=\= puts \=\= into the output, and \=\=\=\[ puts \=\[ into the output.
  4617.  
  4618. arguments: (STR)
  4619. Vinternal-doc-file-name
  4620. Name of file containing documentation strings of built-in symbols.Fchar-to-string
  4621. Convert arg CH to a one-character string containing that character.
  4622.  
  4623. arguments: (CH)
  4624. Fstring-to-char
  4625. Convert arg STRING to a character, the first character of that string.
  4626.  
  4627. arguments: (STR)
  4628. Fpoint
  4629. Return value of point, as an integer.
  4630. Beginning of buffer is position (point-min).
  4631. If BUFFER is nil, the current buffer is assumed.
  4632.  
  4633. arguments: (&optional BUFFER)
  4634. Fpoint-marker
  4635. Return value of point, as a marker object.
  4636. This marker is a copy; you may modify it with reckless abandon.
  4637. If the argument to this function is non-nil, then it returns the real
  4638. point-marker; modifying the position of this marker will move point.
  4639. It is illegal to change the buffer of it, or make it point nowhere.
  4640. If BUFFER is nil, the current buffer is assumed.
  4641.  
  4642. arguments: (&optional DONT-COPY-P BUFFER)
  4643. Fgoto-char
  4644. Set point to POSITION, a number or marker.
  4645. Beginning of buffer is position (point-min), end is (point-max).
  4646. If BUFFER is nil, the current buffer is assumed.
  4647. Return value of POSITION, as an integer.
  4648.  
  4649. arguments: (POSITION &optional BUFFER)
  4650. Fregion-beginning
  4651. Return position of beginning of region, as an integer.
  4652. If BUFFER is nil, the current buffer is assumed.
  4653.  
  4654. arguments: (&optional BUFFER)
  4655. Fregion-end
  4656. Return position of end of region, as an integer.
  4657. If BUFFER is nil, the current buffer is assumed.
  4658.  
  4659. arguments: (&optional BUFFER)
  4660. Fmark-marker
  4661. Return this buffer's mark, as a marker object.
  4662. If `zmacs-regions' is true, then this returns nil unless the region is
  4663. currently in the active (highlighted) state.  With an argument of t, this
  4664. returns the mark (if there is one) regardless of the zmacs-region state.
  4665. You should *generally* not use the mark unless the region is active, if
  4666. the user has expressed a preference for the zmacs-region model.
  4667. Watch out!  Moving this marker changes the mark position.
  4668. If you set the marker not to point anywhere, the buffer will have no mark.
  4669. If BUFFER is nil, the current buffer is assumed.
  4670.  
  4671. arguments: (&optional INACTIVE-P BUFFER)
  4672. Fsave-excursion
  4673. Save point, mark, and current buffer; execute BODY; restore those things.
  4674. Executes BODY just like `progn'.
  4675. The values of point, mark and the current buffer are restored
  4676. even in case of abnormal exit (throw or error).Fbuffer-size
  4677. Return the number of characters in BUFFER.
  4678. If BUFFER is nil, the current buffer is assumed.
  4679.  
  4680. arguments: (&optional BUFFER)
  4681. Fpoint-min
  4682. Return the minimum permissible value of point in BUFFER.
  4683. This is 1, unless narrowing (a buffer restriction) is in effect.
  4684. If BUFFER is nil, the current buffer is assumed.
  4685.  
  4686. arguments: (&optional BUFFER)
  4687. Fpoint-min-marker
  4688. Return a marker to the minimum permissible value of point in BUFFER.
  4689. This is the beginning, unless narrowing (a buffer restriction) is in effect.
  4690. If BUFFER is nil, the current buffer is assumed.
  4691.  
  4692. arguments: (&optional BUFFER)
  4693. Fpoint-max
  4694. Return the maximum permissible value of point in BUFFER.
  4695. This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
  4696. is in effect, in which case it is less.
  4697. If BUFFER is nil, the current buffer is assumed.
  4698.  
  4699. arguments: (&optional BUFFER)
  4700. Fpoint-max-marker
  4701. Return a marker to the maximum permissible value of point BUFFER.
  4702. This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
  4703. is in effect, in which case it is less.
  4704. If BUFFER is nil, the current buffer is assumed.
  4705.  
  4706. arguments: (&optional BUFFER)
  4707. Ffollowing-char
  4708. Return the character following point, as a number.
  4709. At the end of the buffer or accessible region, return 0.
  4710. If BUFFER is nil, the current buffer is assumed.
  4711.  
  4712. arguments: (&optional BUFFER)
  4713. Fpreceding-char
  4714. Return the character preceding point, as a number.
  4715. At the beginning of the buffer or accessible region, return 0.
  4716. If BUFFER is nil, the current buffer is assumed.
  4717.  
  4718. arguments: (&optional BUFFER)
  4719. Fbobp
  4720. Return T if point is at the beginning of the buffer.
  4721. If the buffer is narrowed, this means the beginning of the narrowed part.
  4722. If BUFFER is nil, the current buffer is assumed.
  4723.  
  4724. arguments: (&optional BUFFER)
  4725. Feobp
  4726. Return T if point is at the end of the buffer.
  4727. If the buffer is narrowed, this means the end of the narrowed part.
  4728. If BUFFER is nil, the current buffer is assumed.
  4729.  
  4730. arguments: (&optional BUFFER)
  4731. Fbolp
  4732. Return T if point is at the beginning of a line.
  4733. If BUFFER is nil, the current buffer is assumed.
  4734.  
  4735. arguments: (&optional BUFFER)
  4736. Feolp
  4737. Return T if point is at the end of a line.
  4738. `End of a line' includes point being at the end of the buffer.
  4739. If BUFFER is nil, the current buffer is assumed.
  4740.  
  4741. arguments: (&optional BUFFER)
  4742. Fchar-after
  4743. Return character in BUFFER at position POS.
  4744. POS is an integer or a buffer pointer.
  4745. If POS is out of range, the value is nil.
  4746. If BUFFER is nil, the current buffer is assumed.
  4747.  
  4748. arguments: (POS &optional BUFFER)
  4749. Fuser-login-name
  4750. Return the name under which the user logged in, as a string.
  4751. This is based on the effective uid, not the real uid.
  4752. Also, if the environment variable LOGNAME or USER is set,
  4753. that determines the value of this function.
  4754. If the optional argument UID is present, then environment variables are
  4755. ignored and this function returns the login name for that UID, or nil.
  4756.  
  4757. arguments: (&optional UID)
  4758. Fuser-real-login-name
  4759. Return the name of the user's real uid, as a string.
  4760. This ignores the environment variables LOGNAME and USER, so it differs from
  4761. `user-login-name' when running under `su'.
  4762.  
  4763. arguments: ()
  4764. Fuser-uid
  4765. Return the effective uid of Emacs, as an integer.
  4766.  
  4767. arguments: ()
  4768. Fuser-real-uid
  4769. Return the real uid of Emacs, as an integer.
  4770.  
  4771. arguments: ()
  4772. Fuser-full-name
  4773. Return the full name of the user logged in, as a string.
  4774. If the optional argument USER is given, then the full name for that
  4775. user is returned, or nil.  USER may be either a login name or a uid.
  4776.  
  4777. arguments: (&optional USER)
  4778. Fsystem-name
  4779. Return the name of the machine you are running on, as a string.
  4780.  
  4781. arguments: ()
  4782. Femacs-pid
  4783. Return the process ID of Emacs, as an integer.
  4784.  
  4785. arguments: ()
  4786. Fcurrent-time
  4787. Return the current time, as the number of seconds since 12:00 AM January 1970.
  4788. The time is returned as a list of three integers.  The first has the
  4789. most significant 16 bits of the seconds, while the second has the
  4790. least significant 16 bits.  The third integer gives the microsecond
  4791. count.
  4792.  
  4793. The microsecond count is zero on systems that do not provide
  4794. resolution finer than a second.
  4795.  
  4796. arguments: ()
  4797. Fcurrent-time-string
  4798. Return the current time, as a human-readable string.
  4799. Programs can use this function to decode a time,
  4800. since the number of columns in each field is fixed.
  4801. The format is `Sun Sep 16 01:03:52 1973'.
  4802. If an argument is given, it specifies a time to format
  4803. instead of the current time.  The argument should have the form:
  4804.   (HIGH . LOW)
  4805. or the form:
  4806.   (HIGH LOW . IGNORED).
  4807. Thus, you can use times obtained from `current-time'
  4808. and from `file-attributes'.
  4809.  
  4810. arguments: (&optional SPECIFIED-TIME)
  4811. Fcurrent-locale-time-string
  4812. Return the current time, as a human-readable string.
  4813. Programs can use this function to decode a time,
  4814. since the number of columns in each field is fixed.
  4815. The format is `Sun Sep 16 01:03:52 1973'.
  4816. If an argument is given, it specifies a time to format
  4817. instead of the current time.  The argument should have the form:
  4818.   (HIGH . LOW)
  4819. or the form:
  4820.   (HIGH LOW . IGNORED).
  4821. Thus, you can use times obtained from `current-time'
  4822. and from `file-attributes'.
  4823.  
  4824. arguments: (&optional SPECIFIED-TIME)
  4825. Fcurrent-time-zone
  4826. Return the offset and name for the local time zone.
  4827. This returns a list of the form (OFFSET NAME).
  4828. OFFSET is an integer number of seconds ahead of UTC (east of Greenwich).
  4829.     A negative value means west of Greenwich.
  4830. NAME is a string giving the name of the time zone.
  4831. If an argument is given, it specifies when the time zone offset is determined
  4832. instead of using the current time.  The argument should have the form:
  4833.   (HIGH . LOW)
  4834. or the form:
  4835.   (HIGH LOW . IGNORED).
  4836. Thus, you can use times obtained from `current-time'
  4837. and from `file-attributes'.
  4838.  
  4839. Some operating systems cannot provide all this information to Emacs;
  4840. in this case, `current-time-zone' returns a list containing nil for
  4841. the data it can't find.
  4842.  
  4843. arguments: (&optional SPECIFIED-TIME)
  4844. Finsert
  4845. Insert the arguments, either strings or characters, at point.
  4846. Point moves forward so that it ends up after the inserted text.
  4847. Any other markers at the point of insertion remain before the text.
  4848. If a string has non-null string-extent-data, new extents will be created.Finsert-before-markers
  4849. Insert strings or characters at point, relocating markers after the text.
  4850. Point moves forward so that it ends up after the inserted text.
  4851. Any other markers at the point of insertion also end up after the text.Finsert-string
  4852. Insert STRING into BUFFER at BUFFER's point.
  4853. Point moves forward so that it ends up after the inserted text.
  4854. Any other markers at the point of insertion remain before the text.
  4855. If a string has non-null string-extent-data, new extents will be created.
  4856. BUFFER defaults to the current buffer.
  4857.  
  4858. arguments: (STRING &optional BUFFER)
  4859. Finsert-char
  4860. Insert COUNT (second arg) copies of CHR (first arg).
  4861. Point and all markers are affected as in the function `insert'.
  4862. COUNT defaults to 1 if omitted.
  4863. The optional third arg BUFFER specifies the buffer to insert the
  4864. text into.  If BUFFER is nil, the current buffer is assumed.
  4865.  
  4866. arguments: (CHR &optional COUNT BUFFER)
  4867. Fbuffer-substring
  4868. Return the contents of part of BUFFER as a string.
  4869. The two arguments START and END are character positions;
  4870. they can be in either order.  If omitted, they default to the beginning
  4871. and end of BUFFER, respectively.
  4872. If there are duplicable extents in the region, the string remembers
  4873. them in its string-extent-data.
  4874. If BUFFER is nil, the current buffer is assumed.
  4875.  
  4876. arguments: (&optional START END BUFFER)
  4877. Finsert-buffer-substring
  4878. Insert before point a substring of the contents of buffer BUFFER.
  4879. BUFFER may be a buffer or a buffer name.
  4880. Arguments START and END are character numbers specifying the substring.
  4881. They default to the beginning and the end of BUFFER.
  4882.  
  4883. arguments: (BUFFER &optional START END)
  4884. Fcompare-buffer-substrings
  4885. Compare two substrings of two buffers; return result as number.
  4886. the value is -N if first string is less after N-1 chars,
  4887. +N if first string is greater after N-1 chars, or 0 if strings match.
  4888. Each substring is represented as three arguments: BUFFER, START and END.
  4889. That makes six args in all, three for each substring.
  4890.  
  4891. The value of `case-fold-search' in the current buffer
  4892. determines whether case is significant or ignored.
  4893.  
  4894. arguments: (BUFFER1 START1 END1 BUFFER2 START2 END2)
  4895. Fsubst-char-in-region
  4896. From START to END, replace FROMCHAR with TOCHAR each time it occurs.
  4897. If optional arg NOUNDO is non-nil, don't record this change for undo
  4898. and don't mark the buffer as really changed.
  4899.  
  4900. arguments: (START END FROMCHAR TOCHAR &optional NOUNDO)
  4901. Ftranslate-region
  4902. From START to END, translate characters according to TABLE.
  4903. TABLE is a string; the Nth character in it is the mapping
  4904. for the character with code N.  Returns the number of characters changed.
  4905.  
  4906. arguments: (START END TABLE)
  4907. Fdelete-region
  4908. Delete the text between point and mark.
  4909. When called from a program, expects two arguments,
  4910. positions (integers or markers) specifying the stretch to be deleted.
  4911. If BUFFER is nil, the current buffer is assumed.
  4912.  
  4913. arguments: (B E &optional BUFFER)
  4914. Fwiden
  4915. Remove restrictions (narrowing) from BUFFER.
  4916. This allows the buffer's full text to be seen and edited.
  4917. If BUFFER is nil, the current buffer is assumed.
  4918.  
  4919. arguments: (&optional BUFFER)
  4920. Fnarrow-to-region
  4921. Restrict editing in BUFFER to the current region.
  4922. The rest of the text becomes temporarily invisible and untouchable
  4923. but is not deleted; if you save the buffer in a file, the invisible
  4924. text is included in the file.  \[widen] makes all visible again.
  4925. If BUFFER is nil, the current buffer is assumed.
  4926. See also `save-restriction'.
  4927.  
  4928. When calling from a program, pass two arguments; positions (integers
  4929. or markers) bounding the text that should remain visible.
  4930.  
  4931. arguments: (B E &optional BUFFER)
  4932. Fsave-restriction
  4933. Execute BODY, saving and restoring current buffer's restrictions.
  4934. The buffer's restrictions make parts of the beginning and end invisible.
  4935. (They are set up with `narrow-to-region' and eliminated with `widen'.)
  4936. This special form, `save-restriction', saves the current buffer's restrictions
  4937. when it is entered, and restores them when it is exited.
  4938. So any `narrow-to-region' within BODY lasts only until the end of the form.
  4939. The old restrictions settings are restored
  4940. even in case of abnormal exit (throw or error).
  4941.  
  4942. The value returned is the value of the last form in BODY.
  4943.  
  4944. `save-restriction' can get confused if, within the BODY, you widen
  4945. and then make changes outside the area within the saved restrictions.
  4946.  
  4947. Note: if you are using both `save-excursion' and `save-restriction',
  4948. use `save-excursion' outermost:
  4949.     (save-excursion (save-restriction ...))Fformat
  4950. Format a string out of a control-string and arguments.
  4951. The first argument is a control string.
  4952. The other arguments are substituted into it to make the result, a string.
  4953. It may contain %-sequences meaning to substitute the next argument.
  4954. %s means print all objects as-is, using `princ'.
  4955. %S means print all objects as s-expressions, using `prin1'.
  4956. %d or %i means print as an integer in decimal (%o octal, %x lowercase hex,
  4957.   %X uppercase hex).
  4958. %c means print as a single character.
  4959. %f means print as a floating-point number in fixed notation (e.g. 785.200).
  4960. %e or %E means print as a floating-point number in scientific notation
  4961.   (e.g. 7.85200e+03).
  4962. %g or %G means print as a floating-point number in "pretty format";
  4963.   depending on the number, either %f or %e/%E format will be used, and
  4964.   trailing zeroes are removed from the fractional part.
  4965. The argument used for all but %s and %S must be a number.  It will be
  4966.   converted to an integer or a floating-point number as necessary.
  4967.  
  4968. %$ means reposition to read a specific numbered argument; for example,
  4969.   %3$%s would apply the `%s' and all following format directives
  4970.   to the third argument after the control string. (There must be a
  4971.   positive integer between the % and the $).
  4972. Zero or more of the flag characters `-', `+', ` ', `0', and `#' may be
  4973.   specified between the optional repositioning spec and the conversion
  4974.   character; see below.
  4975. An optional minimum field width may be specified after any flag characters
  4976.   and before the conversion character; it specifies the minimum number of
  4977.   characters that the converted argument will take up.  Padding will be
  4978.   added on the left (or on the right, if the `-' flag is specified), as
  4979.   necessary.  Padding is done with spaces, or with zeroes if the `0' flag
  4980.   is specified.
  4981. An optional period character and precision may be specified after any
  4982.   minimum field width.  It specifies the minimum number of digits to
  4983.   appear in %d, %i, %o, %x, and %X conversions (the number is padded
  4984.   on the left with zeroes as necessary); the number of digits printed
  4985.   after the decimal point for %f, %e, and %E conversions; the number
  4986.   of significant digits printed in %g and %G conversions; and the
  4987.   maximum number of non-padding characters printed in %s and %S
  4988.   conversions.  The default precision for floating-point conversions
  4989.   is six.
  4990.  
  4991. The ` ' and `+' flags mean prefix non-negative numbers with a space or
  4992.   plus sign, respectively.
  4993. The `#' flag means print numbers in an alternate, more verbose format:
  4994.   octal numbers begin with zero; hex numbers begin with a 0x or 0X;
  4995.   a decimal point is printed in %f, %e, and %E conversions even if no
  4996.   numbers are printed after it; and trailing zeroes are not omitted in
  4997.    %g and %G conversions.
  4998.  
  4999. Use %% to put a single % into the output.Fchar-equal
  5000. Return t if two characters match, optionally ignoring case.
  5001. Both arguments must be characters (i.e. integers).
  5002. Case is ignored if `case-fold-search' is non-nil in BUFFER.
  5003. If BUFFER is nil, the current buffer is assumed.
  5004.  
  5005. arguments: (C1 C2 &optional BUFFER)
  5006. Ftranspose-regions
  5007. Transpose region START1 to END1 with START2 to END2.
  5008. The regions may not be overlapping, because the size of the buffer is
  5009. never changed in a transposition.
  5010.  
  5011. Optional fifth arg LEAVE_MARKERS, if non-nil, means don't transpose
  5012. any markers that happen to be located in the regions. (#### BUG: currently
  5013. this function always acts as if LEAVE_MARKERS is non-nil.)
  5014.  
  5015. Transposing beyond buffer boundaries is an error.
  5016.  
  5017. arguments: (STARTR1 ENDR1 STARTR2 ENDR2 &optional LEAVE-MARKERS)
  5018. Vzmacs-regions
  5019. *Whether LISPM-style active regions should be used.
  5020. This means that commands which operate on the region (the area between the
  5021. point and the mark) will only work while the region is in the ``active''
  5022. state, which is indicated by highlighting.  Executing most commands causes
  5023. the region to not be in the active state, so (for example) \[kill-region] will only
  5024. work immediately after activating the region.
  5025.  
  5026. More specifically:
  5027.  
  5028.  - Commands which operate on the region only work if the region is active.
  5029.  - Only a very small set of commands cause the region to become active:
  5030.    Those commands whose semantics are to mark an area, like mark-defun.
  5031.  - The region is deactivated after each command that is executed, except that:
  5032.  - "Motion" commands do not change whether the region is active or not.
  5033.  
  5034. set-mark-command (C-SPC) pushes a mark and activates the region.  Moving the
  5035. cursor with normal motion commands (C-n, C-p, etc) will cause the region
  5036. between point and the recently-pushed mark to be highlighted.  It will
  5037. remain highlighted until some non-motion comand is executed.
  5038.  
  5039. exchange-point-and-mark (\[exchange-point-and-mark]) activates the region.  So if you mark a
  5040. region and execute a command that operates on it, you can reactivate the
  5041. same region with \[exchange-point-and-mark] (or perhaps \[exchange-point-and-mark] \[exchange-point-and-mark]) to operate on it
  5042. again.
  5043.  
  5044. Generally, commands which push marks as a means of navigation (like
  5045. beginning-of-buffer and end-of-buffer (M-< and M->)) do not activate the
  5046. region.  But commands which push marks as a means of marking an area of
  5047. text (like mark-defun (\[mark-defun]), mark-word (\[mark-word]) or mark-whole-buffer (\[mark-whole-buffer]))
  5048. do activate the region.
  5049.  
  5050. The way the command loop actually works with regard to deactivating the
  5051. region is as follows:
  5052.  
  5053. - If the variable `zmacs-region-stays' has been set to t during the command
  5054.   just executed, the region is left alone (this is how the motion commands
  5055.   make the region stay around; see the `_' flag in the `interactive'
  5056.   specification).  `zmacs-region-stays' is reset to nil before each command
  5057.   is executed.
  5058. - If the function `zmacs-activate-region' has been called during the command
  5059.   just executed, the region is left alone.  Very few functions should
  5060.   actually call this function.
  5061. - Otherwise, if the region is active, the region is deactivated and
  5062.   the `zmacs-deactivate-region-hook' is called.Vzmacs-region-active-p
  5063. Do not alter this.  It is for internal use only.Vzmacs-region-stays
  5064. Commands which do not wish to affect whether the region is currently
  5065. highlighted should set this to t.  Normally, the region is turned off after
  5066. executing each command that did not explicitly turn it on with the function
  5067. zmacs-activate-region. Setting this to true lets a command be non-intrusive.
  5068. See the variable `zmacs-regions'.Vatomic-extent-goto-char-p
  5069. Do not use this -- it will be going away soon.
  5070. Indicates if `goto-char' has just been run.  This information is allegedly
  5071. needed to get the desired behavior for atomic extents and unfortunately
  5072. is not available by any other means.Finteractive
  5073. Specify a way of parsing arguments for interactive use of a function.
  5074. For example, write
  5075.   (defun foo (arg) "Doc string" (interactive "p") ...use arg...)
  5076. to make ARG be the prefix argument when `foo' is called as a command.
  5077. The "call" to `interactive' is actually a declaration rather than a function;
  5078.  it tells `call-interactively' how to read arguments
  5079.  to pass to the function.
  5080. When actually called, `interactive' just returns nil.
  5081.  
  5082. The argument of `interactive' is usually a string containing a code letter
  5083.  followed by a prompt.  (Some code letters do not use I/O to get
  5084.  the argument and do not need prompts.)  To prompt for multiple arguments,
  5085.  give a code letter, its prompt, a newline, and another code letter, etc.
  5086.  Prompts are passed to format, and may use % escapes to print the
  5087.  arguments that have already been read.
  5088. If the argument is not a string, it is evaluated to get a list of
  5089.  arguments to pass to the function.
  5090. Just `(interactive)' means pass no args when calling interactively.
  5091.  
  5092. Code letters available are:
  5093. a -- Function name: symbol with a function definition.
  5094. b -- Name of existing buffer.
  5095. B -- Name of buffer, possibly nonexistent.
  5096. c -- Character.
  5097. C -- Command name: symbol with interactive function definition.
  5098. d -- Value of point as number.  Does not do I/O.
  5099. D -- Directory name.
  5100. e -- Last mouse event.  Does not do I/O.
  5101. f -- Existing file name.
  5102. F -- Possibly nonexistent file name.
  5103. i -- Always nil.  Does not do I/O.
  5104. k -- Key sequence (a vector of events).
  5105. m -- Value of mark as number.  Does not do I/O.
  5106. n -- Number read using minibuffer.
  5107. N -- Prefix arg converted to number, or if none, do like code `n'.
  5108. p -- Prefix arg converted to number.  Does not do I/O.
  5109. P -- Prefix arg in raw form.  Does not do I/O.
  5110. r -- Region: point and mark as 2 numeric args, smallest first.  Does no I/O.
  5111. s -- Any string.
  5112. S -- Any symbol.
  5113. v -- Variable name: symbol that is user-variable-p.
  5114. x -- Lisp expression read but not evaluated.
  5115. X -- Lisp expression read and evaluated.
  5116. z -- Coding system.
  5117. Z -- Coding system, nil if no prefix arg.
  5118. In addition, if the string begins with `*'
  5119.  then an error is signaled if the buffer is read-only.
  5120.  This happens before reading any arguments.
  5121. If the string begins with `@', then the window the mouse is over is selected
  5122.  before anything else is done.
  5123. If the string begins with `_', then this command will not cause the region
  5124.  to be deactivated when it completes; that is, `zmacs-region-stays' will be
  5125.  set to t when the command exits successfully.
  5126. You may use any of `@', `*' and `_' at the beginning of the string;
  5127.  they are processed in the order that they appear.Fcall-interactively
  5128. Call FUNCTION, reading args according to its interactive calling specs.
  5129. The function contains a specification of how to do the argument reading.
  5130. In the case of user-defined functions, this is specified by placing a call
  5131. to the function `interactive' at the top level of the function body.
  5132. See `interactive'.
  5133.  
  5134. If optional second arg RECORD-FLAG is the symbol `lambda', the interactive
  5135. calling arguments for FUNCTION are read and returned as a list,
  5136. but the function is not called on them.
  5137.  
  5138. If RECORD-FLAG is `t' then unconditionally put this command in the
  5139. command-history.  Otherwise, this is done only if an arg is read using
  5140. the minibuffer.
  5141.  
  5142. arguments: (FUNCTION &optional RECORD-FLAG)
  5143. Fprefix-numeric-value
  5144. Return numeric meaning of raw prefix argument ARG.
  5145. A raw prefix argument is what you get from `(interactive "P")'.
  5146. Its numeric meaning is what you would get from `(interactive "p")'.
  5147.  
  5148. arguments: (RAW)
  5149. Vprefix-arg
  5150. The value of the prefix argument for the next editing command.
  5151. It may be a number, or the symbol `-' for just a minus sign as arg,
  5152. or a list whose car is a number for just one or more C-U's
  5153. or nil if no argument has been specified.
  5154.  
  5155. You cannot examine this variable to find the argument for this command
  5156. since it has been set to nil by the time you can look.
  5157. Instead, you should use the variable `current-prefix-arg', although
  5158. normally commands can get this prefix argument with (interactive "P").Vcurrent-prefix-arg
  5159. The value of the prefix argument for this editing command.
  5160. It may be a number, or the symbol `-' for just a minus sign as arg,
  5161. or a list whose car is a number for just one or more C-U's
  5162. or nil if no argument has been specified.
  5163. This is what `(interactive "P")' returns.Vcurrent-mouse-event
  5164. The mouse-button event which invoked this command, or nil.
  5165. This is what `(interactive "e")' returns.Vcommand-history
  5166. List of recent commands that read arguments from terminal.
  5167. Each command is represented as a form to evaluate.Vcommand-debug-status
  5168. Debugging status of current interactive command.
  5169. Bound each time `call-interactively' is called;
  5170. may be set by the debugger as a reminder for itself.Fignore-defer-gettext
  5171. If OBJ is of the form (defer-gettext "string"), return the string.
  5172. The purpose of the defer-gettext symbol is to identify strings which
  5173. are translated when they are referenced instead of when they are defined.
  5174.  
  5175. arguments: (OBJ)
  5176. Fgettext
  5177. Look up STRING in the default message domain and return its translation.
  5178. This function does nothing if I18N3 was not enabled when Emacs was compiled.
  5179.  
  5180. arguments: (STRING)
  5181. Fdgettext
  5182. Look up STRING in the specified message domain and return its translation.
  5183. This function does nothing if I18N3 was not enabled when Emacs was compiled.
  5184.  
  5185. arguments: (DOMAIN STRING)
  5186. Fbind-text-domain
  5187. Associate a pathname with a message domain.
  5188. Here's how the path to message files is constructed under SunOS 5.0:
  5189.   {pathname}/{LANG}/LC_MESSAGES/{domain}.mo
  5190. This function does nothing if I18N3 was not enabled when Emacs was compiled.
  5191.  
  5192. arguments: (DOMAIN PATHNAME)
  5193. Fdomain
  5194. Specify the domain used for translating messages in this source file.
  5195. The domain declaration may only appear at top-level, and should preceed
  5196. all function and variable definitions.
  5197.  
  5198. The presence of this declaration in a compiled file effectively sets the
  5199. domain of all functions and variables which are defined in that file.
  5200. Bug: it has no effect on source (.el) files, only compiled (.elc) files.
  5201.  
  5202. arguments: (DOMAIN-NAME)
  5203. For
  5204. Eval args until one of them yields non-nil, then return that value.
  5205. The remaining args are not evalled at all.
  5206. If all args return nil, return nil.Fand
  5207. Eval args until one of them yields nil, then return nil.
  5208. The remaining args are not evalled at all.
  5209. If no arg yields nil, return the last arg's value.Fif
  5210. (if COND THEN ELSE...): if COND yields non-nil, do THEN, else do ELSE...
  5211. Returns the value of THEN or the value of the last of the ELSE's.
  5212. THEN must be one expression, but ELSE... can be zero or more expressions.
  5213. If COND yields nil, and there are no ELSE's, the value is nil.Fcond
  5214. (cond CLAUSES...): try each clause until one succeeds.
  5215. Each clause looks like (CONDITION BODY...).  CONDITION is evaluated
  5216. and, if the value is non-nil, this clause succeeds:
  5217. then the expressions in BODY are evaluated and the last one's
  5218. value is the value of the cond-form.
  5219. If no clause succeeds, cond returns nil.
  5220. If a clause has one element, as in (CONDITION),
  5221. CONDITION's value if non-nil is returned from the cond-form.Fprogn
  5222. (progn BODY...): eval BODY forms sequentially and return value of last one.Fprog1
  5223. (prog1 FIRST BODY...): eval FIRST and BODY sequentially; value from FIRST.
  5224. The value of FIRST is saved during the evaluation of the remaining args,
  5225. whose values are discarded.Fprog2
  5226. (prog1 X Y BODY...): eval X, Y and BODY sequentially; value from Y.
  5227. The value of Y is saved during the evaluation of the remaining args,
  5228. whose values are discarded.Flet*
  5229. (let* VARLIST BODY...): bind variables according to VARLIST then eval BODY.
  5230. The value of the last form in BODY is returned.
  5231. Each element of VARLIST is a symbol (which is bound to nil)
  5232. or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM).
  5233. Each VALUEFORM can refer to the symbols already bound by this VARLIST.Flet
  5234. (let VARLIST BODY...): bind variables according to VARLIST then eval BODY.
  5235. The value of the last form in BODY is returned.
  5236. Each element of VARLIST is a symbol (which is bound to nil)
  5237. or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM).
  5238. All the VALUEFORMs are evalled before any symbols are bound.Fwhile
  5239. (while TEST BODY...): if TEST yields non-nil, eval BODY... and repeat.
  5240. The order of execution is thus TEST, BODY, TEST, BODY and so on
  5241. until TEST returns nil.Fsetq
  5242. (setq SYM VAL SYM VAL ...): set each SYM to the value of its VAL.
  5243. The SYMs are not evaluated.  Thus (setq x y) sets x to the value of y.
  5244. Each SYM is set before the next VAL is computed.Fquote
  5245. Return the argument, without evaluating it.  `(quote x)' yields `x'.Ffunction
  5246. Like `quote', but preferred for objects which are functions.
  5247. In byte compilation, `function' causes its argument to be compiled.
  5248. `quote' cannot do that.Fdefun
  5249. (defun NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function.
  5250. The definition is (lambda ARGLIST [DOCSTRING] BODY...).
  5251. See also the function `interactive'.Fdefmacro
  5252. (defmacro NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro.
  5253. The definition is (macro lambda ARGLIST [DOCSTRING] BODY...).
  5254. When the macro is called, as in (NAME ARGS...),
  5255. the function (lambda ARGLIST BODY...) is applied to
  5256. the list ARGS... as it appears in the expression,
  5257. and the result should be a form to be evaluated instead of the original.Fdefvar
  5258. (defvar SYMBOL INITVALUE DOCSTRING): define SYMBOL as a variable.
  5259. You are not required to define a variable in order to use it,
  5260.  but the definition can supply documentation and an initial value
  5261.  in a way that tags can recognize.
  5262.  
  5263. INITVALUE is evaluated, and used to set SYMBOL, only if SYMBOL's value is
  5264.  void. (However, when you evaluate a defvar interactively, it acts like a
  5265.  defconst: SYMBOL's value is always set regardless of whether it's currently
  5266.  void.)
  5267. If SYMBOL is buffer-local, its default value is what is set;
  5268.  buffer-local values are not affected.
  5269. INITVALUE and DOCSTRING are optional.
  5270. If DOCSTRING starts with *, this variable is identified as a user option.
  5271.  This means that M-x set-variable and M-x edit-options recognize it.
  5272. If INITVALUE is missing, SYMBOL's value is not set.
  5273.  
  5274. In lisp-interaction-mode defvar is treated as defconst.Fdefconst
  5275. (defconst SYMBOL INITVALUE DOCSTRING): define SYMBOL as a constant
  5276. variable.
  5277. The intent is that programs do not change this value, but users may.
  5278. Always sets the value of SYMBOL to the result of evalling INITVALUE.
  5279. If SYMBOL is buffer-local, its default value is what is set;
  5280.  buffer-local values are not affected.
  5281. DOCSTRING is optional.
  5282. If DOCSTRING starts with *, this variable is identified as a user option.
  5283.  This means that M-x set-variable and M-x edit-options recognize it.
  5284.  
  5285. Note: do not use `defconst' for user options in libraries that are not
  5286.  normally loaded, since it is useful for users to be able to specify
  5287.  their own values for such variables before loading the library.
  5288. Since `defconst' unconditionally assigns the variable,
  5289.  it would override the user's choice.Fuser-variable-p
  5290. Return t if VARIABLE is intended to be set and modified by users.
  5291. (The alternative is a variable used internally in a Lisp program.)
  5292. Determined by whether the first character of the documentation
  5293. for the variable is "*"
  5294.  
  5295. arguments: (VARIABLE)
  5296. Fmacroexpand
  5297. Return result of expanding macros at top level of FORM.
  5298. If FORM is not a macro call, it is returned unchanged.
  5299. Otherwise, the macro is expanded and the expansion is considered
  5300. in place of FORM.  When a non-macro-call results, it is returned.
  5301.  
  5302. The second optional arg ENVIRONMENT species an environment of macro
  5303. definitions to shadow the loaded ones for use in file byte-compilation.
  5304.  
  5305. arguments: (FORM &optional ENV)
  5306. Fcatch
  5307. (catch TAG BODY...): eval BODY allowing nonlocal exits using `throw'.
  5308. TAG is evalled to get the tag to use.  Then the BODY is executed.
  5309. Within BODY, (throw TAG) with same tag exits BODY and exits this `catch'.
  5310. If no throw happens, `catch' returns the value of the last BODY form.
  5311. If a throw happens, it specifies the value to return from `catch'.Fthrow
  5312. (throw TAG VALUE): throw to the catch for TAG and return VALUE from it.
  5313. Both TAG and VALUE are evalled.
  5314.  
  5315. arguments: (TAG VAL)
  5316. Funwind-protect
  5317. Do BODYFORM, protecting with UNWINDFORMS.
  5318. Usage looks like (unwind-protect BODYFORM UNWINDFORMS...).
  5319. If BODYFORM completes normally, its value is returned
  5320. after executing the UNWINDFORMS.
  5321. If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway.Fcondition-case
  5322. Regain control when an error is signalled.
  5323. Usage looks like (condition-case VAR BODYFORM HANDLERS...).
  5324. executes BODYFORM and returns its value if no error happens.
  5325. Each element of HANDLERS looks like (CONDITION-NAME BODY...)
  5326. where the BODY is made of Lisp expressions.
  5327.  
  5328. A handler is applicable to an error if CONDITION-NAME is one of the
  5329. error's condition names.  If an error happens, the first applicable
  5330. handler is run.  As a special case, a CONDITION-NAME of t matches
  5331. all errors, even those without the `error' condition name on them
  5332. (e.g. `quit').
  5333.  
  5334. The car of a handler may be a list of condition names
  5335. instead of a single condition name.
  5336.  
  5337. When a handler handles an error,
  5338. control returns to the condition-case and the handler BODY... is executed
  5339. with VAR bound to (SIGNALED-CONDITIONS . SIGNAL-DATA).
  5340. VAR may be nil; then you do not get access to the signal information.
  5341.  
  5342. The value of the last BODY form is returned from the condition-case.
  5343. See also the function `signal' for more info.
  5344.  
  5345. Note that at the time the condition handler is invoked, the Lisp stack
  5346. and the current catches, condition-cases, and bindings have all been
  5347. popped back to the state they were in just before the call to
  5348. `condition-case'.  This means that resignalling the error from
  5349. within the handler will not result in an infinite loop.
  5350.  
  5351. If you want to establish an error handler that is called with the
  5352. Lisp stack, bindings, etc. as they were when `signal' was called,
  5353. rather than when the handler was set, use `call-with-condition-handler'.Fcall-with-condition-handler
  5354. Regain control when an error is signalled, without popping the stack.
  5355. Usage looks like (call-with-condition-handler HANDLER FUNCTION &rest ARGS).
  5356. This function is similar to `condition-case', but the handler is invoked
  5357. with the same environment (Lisp stack, bindings, catches, condition-cases)
  5358. that was current when `signal' was called, rather than when the handler
  5359. was established.
  5360.  
  5361. HANDLER should be a function of one argument, which is a cons of the args
  5362. (SIG . DATA) that were passed to `signal'.  It is invoked whenever
  5363. `signal' is called (this differs from `condition-case', which allows
  5364. you to specify which errors are trapped).  If the handler function
  5365. returns, `signal' continues as if the handler were never invoked.
  5366. (It continues to look for handlers established earlier than this one,
  5367. and invokes the standard error-handler if none is found.)Fsignal
  5368. Signal an error.  Args are SIGNAL-NAME, and associated DATA.
  5369. A signal name is a symbol with an `error-conditions' property
  5370. that is a list of condition names.
  5371. A handler for any of those names will get to handle this signal.
  5372. The symbol `error' should normally be one of them.
  5373.  
  5374. DATA should be a list.  Its elements are printed as part of the error message.
  5375. If the signal is handled, DATA is made available to the handler.
  5376. See also the function `condition-case'.
  5377.  
  5378. arguments: (SIG DATA)
  5379. Fcommandp
  5380. T if FUNCTION makes provisions for interactive calling.
  5381. This means it contains a description for how to read arguments to give it.
  5382. The value is nil for an invalid function or a symbol with no function
  5383. definition.
  5384.  
  5385. Interactively callable functions include strings and vectors (treated
  5386. as keyboard macros), lambda-expressions that contain a top-level call
  5387. to `interactive', autoload definitions made by `autoload' with non-nil
  5388. fourth argument, and some of the built-in functions of Lisp.
  5389.  
  5390. Also, a symbol satisfies `commandp' if its function definition does so.
  5391.  
  5392. arguments: (FUNCTION)
  5393. Fcommand-execute
  5394. Execute CMD as an editor command.
  5395. CMD must be a symbol that satisfies the `commandp' predicate.
  5396. Optional second arg RECORD-FLAG is as in 'call-interactively'.
  5397.  
  5398. arguments: (CMD &optional RECORD)
  5399. Finteractive-p
  5400. Return t if function in which this appears was called interactively.
  5401. This means that the function was called with call-interactively (which
  5402. includes being called as the binding of a key)
  5403. and input is currently coming from the keyboard (not in keyboard macro).
  5404.  
  5405. arguments: ()
  5406. Fautoload
  5407. Define FUNCTION to autoload from FILE.
  5408. FUNCTION is a symbol; FILE is a file name string to pass to `load'.
  5409. Third arg DOCSTRING is documentation for the function.
  5410. Fourth arg INTERACTIVE if non-nil says function can be called interactively.
  5411. Fifth arg TYPE indicates the type of the object:
  5412.    nil or omitted says FUNCTION is a function,
  5413.    `keymap' says FUNCTION is really a keymap, and
  5414.    `macro' or t says FUNCTION is really a macro.
  5415. Third through fifth args give info about the real definition.
  5416. They default to nil.
  5417. If FUNCTION is already defined other than as an autoload,
  5418. this does nothing and returns nil.
  5419.  
  5420. arguments: (FUNCTION FILE &optional DOCSTRING INTERACTIVE TYPE)
  5421. Feval
  5422. Evaluate FORM and return its value.
  5423.  
  5424. arguments: (FORM)
  5425. Ffuncall
  5426. Call first argument as a function, passing remaining arguments to it.
  5427. Thus, (funcall 'cons 'x 'y) returns (x . y).Fapply
  5428. Call FUNCTION with our remaining args, using our last arg as list of args.
  5429. Thus, (apply '+ 1 2 '(3 4)) returns 10.Fbacktrace-debug
  5430. Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG.
  5431. The debugger is entered when that frame exits, if the flag is non-nil.
  5432.  
  5433. arguments: (LEVEL FLAG)
  5434. Fbacktrace
  5435. Print a trace of Lisp function calls currently active.
  5436. Option arg STREAM specifies the output stream to send the backtrace to,
  5437. and defaults to the value of `standard-output'.  Optional second arg
  5438. DETAILED means show places where currently active variable bindings,
  5439. catches, condition-cases, and unwind-protects were made as well as
  5440. function calls. 
  5441.  
  5442. arguments: (&optional STREAM DETAILED)
  5443. Fbacktrace-frame
  5444. Return the function and arguments N frames up from current execution point.
  5445. If that frame has not evaluated the arguments yet (or is a special form),
  5446. the value is (nil FUNCTION ARG-FORMS...).
  5447. If that frame has evaluated its arguments and called its function already,
  5448. the value is (t FUNCTION ARG-VALUES...).
  5449. A &rest arg is represented as the tail of the list ARG-VALUES.
  5450. FUNCTION is whatever was supplied as car of evaluated list,
  5451. or a lambda expression for macro calls.
  5452. If N is more than the number of frames, the value is nil.
  5453.  
  5454. arguments: (NFRAMES)
  5455. Vmax-specpdl-size
  5456. Limit on number of Lisp variable bindings & unwind-protects before error.Vmax-lisp-eval-depth
  5457. Limit on depth in `eval', `apply' and `funcall' before error.
  5458. This limit is to catch infinite recursions for you before they cause
  5459. actual stack overflow in C, which would be fatal for Emacs.
  5460. You can safely make it considerably larger than its default value,
  5461. if that proves inconveniently small.Vquit-flag
  5462. Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil.
  5463. Typing C-G sets `quit-flag' non-nil, regardless of `inhibit-quit'.Vinhibit-quit
  5464. Non-nil inhibits C-g quitting from happening immediately.
  5465. Note that `quit-flag' will still be set by typing C-g,
  5466. so a quit will be signalled as soon as `inhibit-quit' is nil.
  5467. To prevent this happening, set `quit-flag' to nil
  5468. before making `inhibit-quit' nil.  The value of `inhibit-quit' is
  5469. ignored if a critical quit is requested by typing control-shift-G in
  5470. an X frame.Vstack-trace-on-error
  5471. *Non-nil means automatically display a backtrace buffer
  5472. after any error that is not handled by a `condition-case'.
  5473. If the value is a list, an error only means to display a backtrace
  5474. if one of its condition symbols appears in the list.
  5475. See also variable `stack-trace-on-signal'.Vstack-trace-on-signal
  5476. *Non-nil means automatically display a backtrace buffer
  5477. after any error that is signalled, whether or not it is handled by
  5478. a `condition-case'.
  5479. If the value is a list, an error only means to display a backtrace
  5480. if one of its condition symbols appears in the list.
  5481. See also variable `stack-trace-on-error'.Vdebug-on-error
  5482. *Non-nil means enter debugger if an unhandled error is signalled.
  5483. The debugger will not be entered if the error is handled by
  5484. a `condition-case'.
  5485. If the value is a list, an error only means to enter the debugger
  5486. if one of its condition symbols appears in the list.
  5487. See also variables `debug-on-quit' and `debug-on-signal'.Vdebug-on-signal
  5488. *Non-nil means enter debugger if an error is signalled.
  5489. The debugger will be entered whether or not the error is handled by
  5490. a `condition-case'.
  5491. If the value is a list, an error only means to enter the debugger
  5492. if one of its condition symbols appears in the list.
  5493. See also variable `debug-on-quit'.Vdebug-on-quit
  5494. *Non-nil means enter debugger if quit is signalled (C-G, for example).
  5495. Does not apply if quit is handled by a `condition-case'.  Entering the
  5496. debugger can also be achieved at any time (for X11 devices) by typing
  5497. control-shift-G to signal a critical quit.Vdebug-on-next-call
  5498. Non-nil means enter debugger before next `eval', `apply' or `funcall'.Vdebugger
  5499. Function to call to invoke debugger.
  5500. If due to frame exit, args are `exit' and the value being returned;
  5501.  this function's value will be returned instead of that.
  5502. If due to error, args are `error' and a list of the args to `signal'.
  5503. If due to `apply' or `funcall' entry, one arg, `lambda'.
  5504. If due to `eval' entry, one arg, t.Vrun-hooks
  5505. Set to the function `run-hooks', if that function has been defined.
  5506. Otherwise, nil (in a bare Emacs without preloaded Lisp code).Facos
  5507. Return the inverse cosine of ARG.
  5508.  
  5509. arguments: (ARG)
  5510. Fasin
  5511. Return the inverse sine of ARG.
  5512.  
  5513. arguments: (ARG)
  5514. Fatan
  5515. Return the inverse tangent of ARG.
  5516.  
  5517. arguments: (ARG1 &optional ARG2)
  5518. Fcos
  5519. Return the cosine of ARG.
  5520.  
  5521. arguments: (ARG)
  5522. Fsin
  5523. Return the sine of ARG.
  5524.  
  5525. arguments: (ARG)
  5526. Ftan
  5527. Return the tangent of ARG.
  5528.  
  5529. arguments: (ARG)
  5530. Fbessel-j0
  5531. Return the bessel function j0 of ARG.
  5532.  
  5533. arguments: (ARG)
  5534. Fbessel-j1
  5535. Return the bessel function j1 of ARG.
  5536.  
  5537. arguments: (ARG)
  5538. Fbessel-jn
  5539. Return the order N bessel function output jn of ARG.
  5540. The first arg (the order) is truncated to an integer.
  5541.  
  5542. arguments: (ARG1 ARG2)
  5543. Fbessel-y0
  5544. Return the bessel function y0 of ARG.
  5545.  
  5546. arguments: (ARG)
  5547. Fbessel-y1
  5548. Return the bessel function y1 of ARG.
  5549.  
  5550. arguments: (ARG)
  5551. Fbessel-yn
  5552. Return the order N bessel function output yn of ARG.
  5553. The first arg (the order) is truncated to an integer.
  5554.  
  5555. arguments: (ARG1 ARG2)
  5556. Ferf
  5557. Return the mathematical error function of ARG.
  5558.  
  5559. arguments: (ARG)
  5560. Ferfc
  5561. Return the complementary error function of ARG.
  5562.  
  5563. arguments: (ARG)
  5564. Flog-gamma
  5565. Return the log gamma of ARG.
  5566.  
  5567. arguments: (ARG)
  5568. Fexp
  5569. Return the exponential base e of ARG.
  5570.  
  5571. arguments: (ARG)
  5572. Fexpt
  5573. Return the exponential X ** Y.
  5574.  
  5575. arguments: (ARG1 ARG2)
  5576. Flog
  5577. Return the natural logarithm of ARG.
  5578. If second optional argument BASE is given, return log ARG using that base.
  5579.  
  5580. arguments: (ARG &optional BASE)
  5581. Flog10
  5582. Return the logarithm base 10 of ARG.
  5583.  
  5584. arguments: (ARG)
  5585. Fsqrt
  5586. Return the square root of ARG.
  5587.  
  5588. arguments: (ARG)
  5589. Fcube-root
  5590. Return the cube root of ARG.
  5591.  
  5592. arguments: (ARG)
  5593. Facosh
  5594. Return the inverse hyperbolic cosine of ARG.
  5595.  
  5596. arguments: (ARG)
  5597. Fasinh
  5598. Return the inverse hyperbolic sine of ARG.
  5599.  
  5600. arguments: (ARG)
  5601. Fatanh
  5602. Return the inverse hyperbolic tangent of ARG.
  5603.  
  5604. arguments: (ARG)
  5605. Fcosh
  5606. Return the hyperbolic cosine of ARG.
  5607.  
  5608. arguments: (ARG)
  5609. Fsinh
  5610. Return the hyperbolic sine of ARG.
  5611.  
  5612. arguments: (ARG)
  5613. Ftanh
  5614. Return the hyperbolic tangent of ARG.
  5615.  
  5616. arguments: (ARG)
  5617. Fabs
  5618. Return the absolute value of ARG.
  5619.  
  5620. arguments: (ARG)
  5621. Ffloat
  5622. Return the floating point number equal to ARG.
  5623.  
  5624. arguments: (ARG)
  5625. Flogb
  5626. Return largest integer <= the base 2 log of the magnitude of ARG.
  5627. This is the same as the exponent of a float.
  5628.  
  5629. arguments: (ARG)
  5630. Fceiling
  5631. Return the smallest integer no less than ARG.  (Round toward +inf.)
  5632.  
  5633. arguments: (ARG)
  5634. Ffloor
  5635. Return the largest integer no greater than ARG.  (Round towards -inf.)
  5636. With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR.
  5637.  
  5638. arguments: (ARG &optional DIVISOR)
  5639. Fround
  5640. Return the nearest integer to ARG.
  5641.  
  5642. arguments: (ARG)
  5643. Ftruncate
  5644. Truncate a floating point number to an integer.
  5645. Rounds the value toward zero.
  5646.  
  5647. arguments: (ARG)
  5648. Ffceiling
  5649. Return the smallest integer no less than ARG, as a float.
  5650. (Round toward +inf.)
  5651.  
  5652. arguments: (ARG)
  5653. Fffloor
  5654. Return the largest integer no greater than ARG, as a float.
  5655. (Round towards -inf.)
  5656.  
  5657. arguments: (ARG)
  5658. Ffround
  5659. Return the nearest integer to ARG, as a float.
  5660.  
  5661. arguments: (ARG)
  5662. Fftruncate
  5663. Truncate a floating point number to an integral float value.
  5664. Rounds the value toward zero.
  5665.  
  5666. arguments: (ARG)
  5667. Fidentity
  5668. Return the argument unchanged.
  5669.  
  5670. arguments: (ARG)
  5671. Frandom
  5672. Return a pseudo-random number.
  5673. On most systems all integers representable in Lisp are equally likely.
  5674. A lisp integer is a few bits smaller than a C `long'; on most systems,
  5675. this means 28 bits.)
  5676. With argument N, return random number in interval [0,N).
  5677. With argument t, set the random number seed from the current time and pid.
  5678.  
  5679. arguments: (&optional LIMIT)
  5680. Flength
  5681. Return the length of vector, list or string SEQUENCE.
  5682.  
  5683. arguments: (OBJ)
  5684. Fstring-equal
  5685. T if two strings have identical contents.
  5686. Case is significant.
  5687. Symbols are also allowed; their print names are used instead.
  5688.  
  5689. arguments: (S1 S2)
  5690. Fstring-lessp
  5691. T if first arg string is less than second in lexicographic order.
  5692. If I18N2 support was compiled in, ordering is determined by the locale.
  5693. Case is significant for the default C locale.
  5694. Symbols are also allowed; their print names are used instead.
  5695.  
  5696. arguments: (S1 S2)
  5697. Fstring-modified-tick
  5698. Return STRING's tick counter, incremented for each change to the string.
  5699. Each string has a tick counter which is incremented each time the contents
  5700. of the string are changed (e.g. with `aset').  It wraps around occasionally.
  5701.  
  5702. arguments: (STRING)
  5703. Fappend
  5704. Concatenate all the arguments and make the result a list.
  5705. The result is a list whose elements are the elements of all the arguments.
  5706. Each argument may be a list, vector or string.
  5707. The last argument is not copied, just used as the tail of the new list.Fconcat
  5708. Concatenate all the arguments and make the result a string.
  5709. The result is a string whose elements are the elements of all the arguments.
  5710. Each argument may be a string, a character (integer), a list of characters,
  5711. or a vector of numbers.Fvconcat
  5712. Concatenate all the arguments and make the result a vector.
  5713. The result is a vector whose elements are the elements of all the arguments.
  5714. Each argument may be a list, vector or string.Fcopy-sequence
  5715. Return a copy of a list, vector or string.
  5716. The elements of a list or vector are not copied; they are shared
  5717. with the original.
  5718.  
  5719. arguments: (ARG)
  5720. Fcopy-alist
  5721. Return a copy of ALIST.
  5722. This is an alist which represents the same mapping from objects to objects,
  5723. but does not share the alist structure with ALIST.
  5724. The objects mapped (cars and cdrs of elements of the alist)
  5725. are shared, however.
  5726. Elements of ALIST that are not conses are also shared.
  5727.  
  5728. arguments: (ALIST)
  5729. Fcopy-tree
  5730. Return a copy of a list and substructures.
  5731. The argument is copied, and any lists contained within it are copied
  5732. recursively.  Circularities and shared substructures are not preserved.
  5733. Second arg VECP causes vectors to be copied, too.  Strings are not copied.
  5734.  
  5735. arguments: (ARG &optional VECP)
  5736. Fsubstring
  5737. Return a substring of STRING, starting at index FROM and ending before TO.
  5738. TO may be nil or omitted; then the substring runs to the end of STRING.
  5739. If FROM or TO is negative, it counts from the end.
  5740. Relevant parts of the string-extent-data are copied in the new string.
  5741.  
  5742. arguments: (STRING FROM &optional TO)
  5743. Fnthcdr
  5744. Take cdr N times on LIST, returns the result.
  5745.  
  5746. arguments: (N LIST)
  5747. Fnth
  5748. Return the Nth element of LIST.
  5749. N counts from zero.  If LIST is not that long, nil is returned.
  5750.  
  5751. arguments: (N LIST)
  5752. Felt
  5753. Return element of SEQUENCE at index N.
  5754.  
  5755. arguments: (SEQ N)
  5756. Fmember
  5757. Return non-nil if ELT is an element of LIST.  Comparison done with `equal'.
  5758. The value is actually the tail of LIST whose car is ELT.
  5759.  
  5760. arguments: (ELT LIST)
  5761. Fmemq
  5762. Return non-nil if ELT is an element of LIST.  Comparison done with EQ.
  5763. The value is actually the tail of LIST whose car is ELT.
  5764.  
  5765. arguments: (ELT LIST)
  5766. Fassoc
  5767. Return non-nil if KEY is `equal' to the car of an element of LIST.
  5768. The value is actually the element of LIST whose car is KEY.
  5769.  
  5770. arguments: (KEY LIST)
  5771. Fassq
  5772. Return non-nil if KEY is `eq' to the car of an element of LIST.
  5773. The value is actually the element of LIST whose car is KEY.
  5774. Elements of LIST that are not conses are ignored.
  5775.  
  5776. arguments: (KEY LIST)
  5777. Frassoc
  5778. Return non-nil if KEY is `equal' to the cdr of an element of LIST.
  5779. The value is actually the element of LIST whose cdr is KEY.
  5780.  
  5781. arguments: (KEY LIST)
  5782. Frassq
  5783. Return non-nil if KEY is `eq' to the cdr of an element of LIST.
  5784. The value is actually the element of LIST whose cdr is KEY.
  5785.  
  5786. arguments: (KEY LIST)
  5787. Fdelete
  5788. Delete by side effect any occurrences of ELT as a member of LIST.
  5789. The modified LIST is returned.  Comparison is done with `equal'.
  5790. If the first member of LIST is ELT, there is no way to remove it by side
  5791. effect; therefore, write `(setq foo (delete element foo))' to be sure
  5792. of changing the value of `foo'.
  5793.  
  5794. arguments: (ELT LIST)
  5795. Fdelq
  5796. Delete by side effect any occurrences of ELT as a member of LIST.
  5797. The modified LIST is returned.  Comparison is done with `eq'.
  5798. If the first member of LIST is ELT, there is no way to remove it by side
  5799. effect; therefore, write `(setq foo (delq element foo))' to be sure of
  5800. changing the value of `foo'.
  5801.  
  5802. arguments: (ELT LIST)
  5803. Fremassoc
  5804. Delete by side effect any elements of LIST whose car is `equal' to KEY.
  5805. The modified LIST is returned.  If the first member of LIST has a car
  5806. that is `equal' to KEY, there is no way to remove it by side effect;
  5807. therefore, write `(setq foo (remassoc key foo))' to be sure of changing
  5808. the value of `foo'.
  5809.  
  5810. arguments: (KEY LIST)
  5811. Fremassq
  5812. Delete by side effect any elements of LIST whose car is `eq' to KEY.
  5813. The modified LIST is returned.  If the first member of LIST has a car
  5814. that is `eq' to KEY, there is no way to remove it by side effect;
  5815. therefore, write `(setq foo (remassq key foo))' to be sure of changing
  5816. the value of `foo'.
  5817.  
  5818. arguments: (KEY LIST)
  5819. Fremrassoc
  5820. Delete by side effect any elements of LIST whose cdr is `equal' to KEY.
  5821. The modified LIST is returned.  If the first member of LIST has a car
  5822. that is `equal' to KEY, there is no way to remove it by side effect;
  5823. therefore, write `(setq foo (remrassoc key foo))' to be sure of changing
  5824. the value of `foo'.
  5825.  
  5826. arguments: (KEY LIST)
  5827. Fremrassq
  5828. Delete by side effect any elements of LIST whose cdr is `eq' to KEY.
  5829. The modified LIST is returned.  If the first member of LIST has a car
  5830. that is `eq' to KEY, there is no way to remove it by side effect;
  5831. therefore, write `(setq foo (remrassq key foo))' to be sure of changing
  5832. the value of `foo'.
  5833.  
  5834. arguments: (KEY LIST)
  5835. Fnreverse
  5836. Reverse LIST by modifying cdr pointers.
  5837. Returns the beginning of the reversed list.
  5838.  
  5839. arguments: (LIST)
  5840. Freverse
  5841. Reverse LIST, copying.  Returns the beginning of the reversed list.
  5842. See also the function `nreverse', which is used more often.
  5843.  
  5844. arguments: (LIST)
  5845. Fsort
  5846. Sort LIST, stably, comparing elements using PREDICATE.
  5847. Returns the sorted list.  LIST is modified by side effects.
  5848. PREDICATE is called with two elements of LIST, and should return T
  5849. if the first element is "less" than the second.
  5850.  
  5851. arguments: (LIST PRED)
  5852. Fplists-eq
  5853. Return non-nil if property lists A and B are `eq'.
  5854. A property list is an alternating list of keywords and values, where a nil
  5855.  value is equivalent to the property not existing.  This function does
  5856.  order-insensitive comparisons of the property lists: For example, the
  5857.  property lists '(a 1 b 2 c nil) and '(b 2 a 1) are equal.
  5858. Comparison between values is done using `eq'.  See also `plists-equal'.
  5859.  
  5860. arguments: (A B)
  5861. Fplists-equal
  5862. Return non-nil if property lists A and B are `equal'.
  5863. A property list is an alternating list of keywords and values, where a nil
  5864.  value is equivalent to the property not existing.  This function does
  5865.  order-insensitive comparisons of the property lists: For example, the
  5866.  property lists '(a 1 b 2 c nil) and '(b 2 a 1) are equal.
  5867. Comparison between values is done using `equal'.  See also `plists-eq'.
  5868.  
  5869. arguments: (A B)
  5870. Fgetf
  5871. Search PROPLIST for property PROPNAME; return its value or DEFAULT.
  5872. PROPLIST is a list of the sort returned by `symbol-plist'.
  5873.  
  5874. arguments: (PLIST PROP &optional DEFAULT)
  5875. Fget
  5876. Return the value of OBJECT's PROPNAME property.
  5877. This is the last VALUE stored with `(put OBJECT PROPNAME VALUE)'.
  5878. If there is no such property, return optional third arg DEFAULT
  5879. (which defaults to `nil').  OBJECT can be a symbol, face, extent,
  5880. or string.  See also `put', `remprop', and `object-props'.
  5881.  
  5882. arguments: (OBJECT PROPNAME &optional DEFAULT)
  5883. Fput
  5884. Store OBJECT's PROPNAME property with value VALUE.
  5885. It can be retrieved with `(get OBJECT PROPNAME)'.  OBJECT can be a
  5886. symbol, face, extent, or string.
  5887.  
  5888. For a string, the following symbols have predefined meanings:
  5889.  
  5890.  dup-list            List of string's extent replicas.
  5891.  
  5892. For the predefined properties for extents, see `set-extent-property'.
  5893. For the predefined properties for faces, see `set-face-property'.
  5894.  
  5895. See also `get', `remprop', and `object-props'.
  5896.  
  5897. arguments: (OBJECT PROPNAME VALUE)
  5898. Fremprop
  5899. Remove from OBJECT's property list the property PROPNAME and its
  5900. value.  OBJECT can be a symbol, face, extent, or string.  Returns
  5901. non-nil if the property list was actually changed (i.e. if PROPNAME
  5902. was present in the property list).  See also `get', `put', and
  5903. `object-props'.
  5904.  
  5905. arguments: (OBJECT PROPNAME)
  5906. Fobject-props
  5907. Return a property list of OBJECT's props.
  5908. This is a copy of OBJECT's property list, not the actual property list
  5909. stored in the object; therefore, you cannot change a property on OBJECT
  5910. by modifying this list.  Use `put' for that.
  5911.  
  5912. Note that for a symbol, this function is not the same as `symbol-plist';
  5913. that function returns the actual property list, whereas `object-props'
  5914. returns a copy of the property list.
  5915.  
  5916. arguments: (OBJECT)
  5917. Fequal
  5918. T if two Lisp objects have similar structure and contents.
  5919. They must have the same data type.
  5920. Conses are compared by comparing the cars and the cdrs.
  5921. Vectors and strings are compared element by element.
  5922. Numbers are compared by value.  Symbols must match exactly.
  5923.  
  5924. arguments: (O1 O2)
  5925. Ffillarray
  5926. Store each element of ARRAY with ITEM.  ARRAY is a vector or string.
  5927.  
  5928. arguments: (ARRAY ITEM)
  5929. Fnconc
  5930. Concatenate any number of lists by altering them.
  5931. Only the last argument is not altered, and need not be a list.Fmapconcat
  5932. Apply FN to each element of SEQ, and concat the results as strings.
  5933. In between each pair of results, stick in SEP.
  5934. Thus, " " as SEP results in spaces between the values returned by FN.
  5935.  
  5936. arguments: (FN SEQ SEP)
  5937. Fmapcar
  5938. Apply FUNCTION to each element of SEQUENCE, and make a list of the results.
  5939. The result is a list just as long as SEQUENCE.
  5940. SEQUENCE may be a list, a vector or a string.
  5941.  
  5942. arguments: (FN SEQ)
  5943. Fload-average
  5944. Return list of 1 minute, 5 minute and 15 minute load averages.
  5945. Each of the three load averages is multiplied by 100,
  5946. then converted to integer.
  5947.  
  5948. If the 5-minute or 15-minute load averages are not available, return a
  5949. shortened list, containing only those averages which are available.
  5950.  
  5951. On most systems, this won't work unless the emacs executable is installed
  5952. as setgid kmem (assuming that /dev/kmem is in the group kmem).
  5953.  
  5954. arguments: ()
  5955. Ffeaturep
  5956. Return t if FEATURE is present in this Emacs.
  5957. Use this to conditionalize execution of lisp code based on the presence or
  5958. absence of emacs or environment extensions.
  5959. Use `provide' to declare that a feature is available.
  5960. This function looks at the value of the variable `features'.
  5961.  
  5962. arguments: (FEATURE)
  5963. Fprovide
  5964. Announce that FEATURE is a feature of the current Emacs.
  5965.  
  5966. arguments: (FEATURE)
  5967. Frequire
  5968. If feature FEATURE is not loaded, load it from FILENAME.
  5969. If FEATURE is not a member of the list `features', then the feature
  5970. is not loaded; so load the file FILENAME.
  5971. If FILENAME is omitted, the printname of FEATURE is used as the file name.
  5972.  
  5973. arguments: (FEATURE &optional FILE-NAME)
  5974. Vfeatures
  5975. A list of symbols which are the features of the executing emacs.
  5976. Used by `featurep' and `require', and altered by `provide'.Fwrite-char
  5977. Output character CH to stream STREAM.
  5978. STREAM defaults to the value of `standard-output' (which see).
  5979.  
  5980. arguments: (CH &optional STREAM)
  5981. Fwith-output-to-temp-buffer
  5982. Bind `standard-output' to buffer BUFNAME, eval BODY, then show that buffer.
  5983. The buffer is cleared out initially, and marked as unmodified when done.
  5984. All output done by BODY is inserted in that buffer by default.
  5985. The buffer is displayed in another window, but not selected.
  5986. The value of the last form in BODY is returned.
  5987. If BODY does not finish normally, the buffer BUFNAME is not displayed.
  5988.  
  5989. If variable `temp-buffer-show-function' is non-nil, call it at the end
  5990. to get the buffer displayed.  It gets one argument, the buffer to display.Fterpri
  5991. Output a newline to STREAM.
  5992. If STREAM is omitted or nil, the value of `standard-output' is used.
  5993.  
  5994. arguments: (&optional STREAM)
  5995. Fprin1
  5996. Output the printed representation of OBJECT, any Lisp object.
  5997. Quoting characters are printed when needed to make output that `read'
  5998. can handle, whenever this is possible.
  5999. Output stream is STREAM, or value of `standard-output' (which see).
  6000.  
  6001. arguments: (OBJECT &optional STREAM)
  6002. Fprin1-to-string
  6003. Return a string containing the printed representation of OBJECT,
  6004. any Lisp object.  Quoting characters are used when needed to make output
  6005. that `read' can handle, whenever this is possible, unless the optional
  6006. second argument NOESCAPE is non-nil.
  6007.  
  6008. arguments: (OBJECT &optional NOESCAPE)
  6009. Fprinc
  6010. Output the printed representation of OBJECT, any Lisp object.
  6011. No quoting characters are used; no delimiters are printed around
  6012. the contents of strings.
  6013. Output stream is STREAM, or value of standard-output (which see).
  6014.  
  6015. arguments: (OBJ &optional STREAM)
  6016. Fprint
  6017. Output the printed representation of OBJECT, with newlines around it.
  6018. Quoting characters are printed when needed to make output that `read'
  6019. can handle, whenever this is possible.
  6020. Output stream is STREAM, or value of `standard-output' (which see).
  6021.  
  6022. arguments: (OBJ &optional STREAM)
  6023. Falternate-debugging-output
  6024. Append CHARACTER to the array `alternate_do_string'.
  6025. This can be used in place of `external-debugging-output' as a function
  6026. to be passed to `print'.  Before calling `print', set `alternate_do_pointer'
  6027. to 0.
  6028.  
  6029.  
  6030. arguments: (CHARACTER)
  6031. Fexternal-debugging-output
  6032. Write CHAR-OR-STRING to stderr or stdout.
  6033. If optional arg STDOUT-P is non-nil, write to stdout; otherwise, write
  6034. to stderr.  You can use this function to write directly to the terminal.
  6035. This function can be used as the STREAM argument of Fprint() or the like.
  6036.  
  6037. If you have opened a termscript file (using `open-termscript'), then
  6038. the output also will be logged to this file.
  6039.  
  6040. arguments: (CHAR-OR-STRING &optional STDOUT-P)
  6041. Fopen-termscript
  6042. Start writing all terminal output to FILE as well as the terminal.
  6043. FILE = nil means just close any termscript file currently open.
  6044.  
  6045. arguments: (FILE)
  6046. Vstandard-output
  6047. Output stream `print' uses by default for outputting a character.
  6048. This may be any function of one argument.
  6049. It may also be a buffer (output is inserted before point)
  6050. or a marker (output is inserted and the marker is advanced)
  6051. or the symbol t (output appears in the minibuffer line).Vfloat-output-format
  6052. The format descriptor string that lisp uses to print floats.
  6053. This is a %-spec like those accepted by `printf' in C,
  6054. but with some restrictions.  It must start with the two characters `%.'.
  6055. After that comes an integer precision specification,
  6056. and then a letter which controls the format.
  6057. The letters allowed are `e', `f' and `g'.
  6058. Use `e' for exponential notation "DIG.DIGITSeEXPT"
  6059. Use `f' for decimal point notation "DIGITS.DIGITS".
  6060. Use `g' to choose the shorter of those two formats for the number at hand.
  6061. The precision in any of these cases is the number of digits following
  6062. the decimal point.  With `f', a precision of 0 means to omit the
  6063. decimal point.  0 is not allowed with `f' or `g'.
  6064.  
  6065. A value of nil means to use `%.16g'.
  6066.  
  6067. Regardless of the value of `float-output-format', a floating point number
  6068. will never be printed in such a way that it is ambiguous with an integer;
  6069. that is, a floating-point number will always be printed with a decimal
  6070. point and/or an exponent, even if the digits following the decimal point
  6071. are all zero.  This is to preserve read-equivalence.Vprint-length
  6072. Maximum length of list or vector to print before abbreviating.
  6073. A value of nil means no limit.Vprint-string-length
  6074. Maximum length of string to print before abbreviating.
  6075. A value of nil means no limit.Vprint-level
  6076. Maximum depth of list nesting to print before abbreviating.
  6077. A value of nil means no limit.Vprint-escape-newlines
  6078. Non-nil means print newlines in strings as backslash-n.Vprint-readably
  6079. If non-nil, then all objects will be printed in a readable form.
  6080. If an object has no readable representation, then an error is signalled.
  6081. When print-readably is true, compiled-function objects will be written in
  6082.  #[...] form instead of in #<byte-code [...]> form, and two-element lists
  6083.  of the form (quote object) will be written as the equivalent 'object.
  6084. Do not SET this variable; bind it instead.Vprint-gensym
  6085. If non-nil, then uninterned symbols will be printed specially.
  6086. Uninterned symbols are those which are not present in `obarray', that is,
  6087. those which were made with `make-symbol' or by calling `intern' with a
  6088. second argument.
  6089.  
  6090. When print-gensym is true, such symbols will be preceeded by "#:", which
  6091. causes the reader to create a new symbol instead of interning and returning
  6092. an existing one.  Beware: the #: syntax creates a new symbol each time it is
  6093. seen, so if you print an object which contains two pointers to the same
  6094. uninterned symbol, `read' will not duplicate that structure.
  6095.  
  6096. Also, since emacs has no real notion of packages, there is no way for the
  6097. printer to distinguish between symbols interned in no obarray, and symbols
  6098. interned in an alternate obarray.Vprint-message-label
  6099. Label for minibuffer messages created with `print'.  This should
  6100. generally be bound with `let' rather than set.  (See `display-message'.)Fload-internal
  6101. Execute a file of Lisp code named FILE.
  6102. First try LIBRARY with `.elc' appended, then try with `.el',
  6103.  then try LIBRARY unmodified.
  6104. This function searches the directories in `load-path'.
  6105. If optional second arg NOERROR is non-nil,
  6106.  report no error if LIBRARY doesn't exist.
  6107. Print messages at start and end of loading unless
  6108.  optional third arg NOMESSAGE is non-nil (ignored in -batch mode).
  6109. If optional fourth arg NOSUFFIX is non-nil, don't try adding
  6110.  suffixes `.elc' or `.el' to the specified name LIBRARY.
  6111. Return t if file exists.
  6112.  
  6113. arguments: (LIBRARY &optional NO-ERROR NOMESSAGE NOSUFFIX)
  6114. Flocate-file
  6115. Search for FILENAME through PATH-LIST, expanded by one of the optional
  6116. SUFFIXES (string of suffixes separated by ":"s), checking for access
  6117. MODE (0|1|2|4 = exists|executable|writeable|readable), default readable.
  6118.  
  6119. `locate-file' keeps hash tables of the directories it searches through,
  6120. in order to speed things up.  It tries valiantly to not get confused in
  6121. the face of a changing and unpredictable environment, but can occasionally
  6122. get tripped up.  In this case, you will have to call
  6123. `locate-file-clear-hashing' to get it back on track.  See that function
  6124. for details.
  6125.  
  6126. arguments: (FILE PATH &optional SUFF MODE)
  6127. Flocate-file-clear-hashing
  6128. Clear the hash records for the specified list of directories.
  6129. `locate-file' uses a hashing scheme to speed lookup, and will correctly
  6130. track the following environmental changes:
  6131.  
  6132. -- changes of any sort to the list of directories to be searched.
  6133. -- addition and deletion of non-shadowing files (see below) from the
  6134.    directories in the list.
  6135. -- byte-compilation of a .el file into a .elc file.
  6136.  
  6137. `locate-file' will primarily get confused if you add a file that shadows
  6138. (i.e. has the same name as) another file further down in the directory list.
  6139. In this case, you must call `locate-file-clear-hashing'.
  6140.  
  6141. arguments: (PATH)
  6142. Feval-buffer
  6143. Execute BUFFER as Lisp code.
  6144. Programs can pass argument PRINTFLAG which controls printing of output:
  6145. nil means discard it; anything else is stream for print.
  6146.  
  6147. arguments: (BUFNAME &optional PRINTFLAG)
  6148. Feval-region
  6149. Execute the region as Lisp code.
  6150. When called from programs, expects two arguments,
  6151. giving starting and ending indices in the current buffer
  6152. of the text to be executed.
  6153. Programs can pass third argument PRINTFLAG which controls output:
  6154. nil means discard it; anything else is stream for printing it.
  6155.  
  6156. If there is no error, point does not move.  If there is an error,
  6157. point remains at the end of the last character read from the buffer.
  6158. Note:  Before evaling the region, this function narrows the buffer to it.
  6159. If the code being eval'd should happen to trigger a redisplay you may
  6160. see some text temporarily disappear because of this.
  6161.  
  6162. arguments: (B E &optional PRINTFLAG)
  6163. Fread
  6164. Read one Lisp expression as text from STREAM, return as Lisp object.
  6165. If STREAM is nil, use the value of `standard-input' (which see).
  6166. STREAM or the value of `standard-input' may be:
  6167.  a buffer (read from point and advance it)
  6168.  a marker (read from where it points and advance it)
  6169.  a function (call it with no arguments for each character,
  6170.      call it with a char as argument to push a char back)
  6171.  a string (takes text from string, starting at the beginning)
  6172.  t (read text line using minibuffer and use it).
  6173.  
  6174. arguments: (&optional STREAM)
  6175. Fread-from-string
  6176. Read one Lisp expression which is represented as text by STRING.
  6177. Returns a cons: (OBJECT-READ . FINAL-STRING-INDEX).
  6178. START and END optionally delimit a substring of STRING from which to read;
  6179.  they default to 0 and (length STRING) respectively.
  6180.  
  6181. arguments: (STRING &optional START END)
  6182. Vvalues
  6183. List of values of all expressions which were read, evaluated and printed.
  6184. Order is reverse chronological.Vstandard-input
  6185. Stream for read to get input from.
  6186. See documentation of `read' for possible values.Vload-path
  6187. *List of directories to search for files to load.
  6188. Each element is a string (directory name) or nil (try default directory).
  6189.  
  6190. Note that the elements of this list *may not* begin with "~", so you must
  6191. call `expand-file-name' on them before adding them to this list.
  6192.  
  6193. Initialized based on EMACSLOADPATH environment variable, if any,
  6194. otherwise to default specified in by file `paths.h' when Emacs was built.
  6195. If there were no paths specified in `paths.h', then emacs chooses a default
  6196. value for this variable by looking around in the file-system near the
  6197. directory in which the emacs executable resides.Vload-in-progress
  6198. Non-nil iff inside of `load'.Vafter-load-alist
  6199. An alist of expressions to be evalled when particular files are loaded.
  6200. Each element looks like (FILENAME FORMS...).
  6201. When `load' is run and the file-name argument is FILENAME,
  6202. the FORMS in the corresponding element are executed at the end of loading.
  6203.  
  6204. FILENAME must match exactly!  Normally FILENAME is the name of a library,
  6205. with no directory specified, since that is how `load' is normally called.
  6206. An error in FORMS does not undo the load,
  6207. but does prevent execution of the rest of the FORMS.Vload-warn-when-source-newer
  6208. *Whether `load' should check whether the source is newer than the binary;
  6209. If this variable is true, then when a `.elc' file is being loaded and the
  6210. corresponding `.el' is newer, a warning message will be printed.Vload-warn-when-source-only
  6211. *Whether `load' should warn when loading a .el file instead of an .elc.
  6212. If this variable is true, then when load is called with a filename without
  6213. an extension, and the .elc version doesn't exist but the .el version does,
  6214. then a message will be printed.  If an explicit extension is passed to load,
  6215. no warning will be printed.Vload-ignore-elc-files
  6216. *Whether `load' should ignore `.elc' files when a suffix is not given.
  6217. This is normally used only to bootstrap the .elc files when building Emacs.Vload-history
  6218. Alist mapping source file names to symbols and features.
  6219. Each alist element is a list that starts with a file name,
  6220. except for one element (optional) that starts with nil and describes
  6221. definitions evaluated from buffers not visiting files.
  6222. The remaining elements of each list are symbols defined as functions
  6223. or variables, and cons cells `(provide . FEATURE)' and `(require . FEATURE)'.Vcurrent-load-list
  6224. Used for internal purposes by `load'.Vfail-on-bucky-bit-character-escapes
  6225. Whether `read' should signal an error when it encounters unsupported
  6226. character escape syntaxes or just read them incorrectly.Fintern
  6227. Return the canonical symbol whose name is STRING.
  6228. If there is none, one is created by this function and returned.
  6229. A second optional argument specifies the obarray to use;
  6230. it defaults to the value of `obarray'.
  6231.  
  6232. arguments: (STR &optional OBARRAY)
  6233. Fintern-soft
  6234. Return the canonical symbol whose name is STRING, or nil if none exists.
  6235. A second optional argument specifies the obarray to use;
  6236. it defaults to the value of `obarray'.
  6237.  
  6238. arguments: (STR &optional OBARRAY)
  6239. Fmapatoms
  6240. Call FUNCTION on every symbol in OBARRAY.
  6241. OBARRAY defaults to the value of `obarray'.
  6242.  
  6243. arguments: (FUNCTION &optional OBARRAY)
  6244. Fapropos-internal
  6245. Show all symbols whose names contain match for REGEXP.
  6246. If optional 2nd arg PRED is non-nil, (funcall PRED SYM) is done
  6247. for each symbol and a symbol is mentioned only if that returns non-nil.
  6248. Return list of symbols found.
  6249.  
  6250. arguments: (STRING &optional PRED)
  6251. Fboundp
  6252. T if SYMBOL's value is not void.
  6253.  
  6254. arguments: (SYM)
  6255. Fglobally-boundp
  6256. T if SYMBOL has a global (non-bound) value.
  6257. This is for the byte-compiler; you really shouldn't be using this.
  6258.  
  6259. arguments: (SYM)
  6260. Ffboundp
  6261. T if SYMBOL's function definition is not void.
  6262.  
  6263. arguments: (SYM)
  6264. Fmakunbound
  6265. Make SYMBOL's value be void.
  6266.  
  6267. arguments: (SYM)
  6268. Ffmakunbound
  6269. Make SYMBOL's function definition be void.
  6270.  
  6271. arguments: (SYM)
  6272. Fsymbol-function
  6273. Return SYMBOL's function definition.     Error if that is void.
  6274.  
  6275. arguments: (SYMBOL)
  6276. Fsymbol-plist
  6277. Return SYMBOL's property list.
  6278.  
  6279. arguments: (SYM)
  6280. Fsymbol-name
  6281. Return SYMBOL's name, a string.
  6282.  
  6283. arguments: (SYM)
  6284. Ffset
  6285. Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
  6286.  
  6287. arguments: (SYM NEWDEF)
  6288. Fdefine-function
  6289. Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
  6290. Associates the function with the current load file, if any.
  6291.  
  6292. arguments: (SYM NEWDEF)
  6293. Fsetplist
  6294. Set SYMBOL's property list to NEWVAL, and return NEWVAL.
  6295.  
  6296. arguments: (SYM NEWPLIST)
  6297. Fsymbol-value
  6298. Return SYMBOL's value.  Error if that is void.
  6299.  
  6300. arguments: (SYM)
  6301. Fset
  6302. Set SYMBOL's value to NEWVAL, and return NEWVAL.
  6303.  
  6304. arguments: (SYM NEWVAL)
  6305. Fdefault-boundp
  6306. Return T if SYMBOL has a non-void default value.
  6307. This is the value that is seen in buffers that do not have their own values
  6308. for this variable.
  6309.  
  6310. arguments: (SYM)
  6311. Fdefault-value
  6312. Return SYMBOL's default value.
  6313. This is the value that is seen in buffers that do not have their own values
  6314. for this variable.  The default value is meaningful for variables with
  6315. local bindings in certain buffers.
  6316.  
  6317. arguments: (SYM)
  6318. Fset-default
  6319. Set SYMBOL's default value to VAL.  SYMBOL and VAL are evaluated.
  6320. The default value is seen in buffers that do not have their own values
  6321. for this variable.
  6322.  
  6323. arguments: (SYM VALUE)
  6324. Fsetq-default
  6325. Set the default value of variable VAR to VALUE.
  6326. VAR, the variable name, is literal (not evaluated);
  6327. VALUE is an expression and it is evaluated.
  6328. The default value of a variable is seen in buffers
  6329. that do not have their own values for the variable.
  6330.  
  6331. More generally, you can use multiple variables and values, as in
  6332.   (setq-default SYM VALUE SYM VALUE...)
  6333. This sets each SYM's default value to the corresponding VALUE.
  6334. The VALUE for the Nth SYM can refer to the new default values
  6335. of previous SYMs.Fmake-variable-buffer-local
  6336. Make VARIABLE have a separate value for each buffer.
  6337. At any time, the value for the current buffer is in effect.
  6338. There is also a default value which is seen in any buffer which has not yet
  6339. set its own value.
  6340. Using `set' or `setq' to set the variable causes it to have a separate value
  6341. for the current buffer if it was previously using the default value.
  6342. The function `default-value' gets the default value and `set-default'
  6343. sets it.
  6344.  
  6345. arguments: (VARIABLE)
  6346. Fmake-local-variable
  6347. Make VARIABLE have a separate value in the current buffer.
  6348. Other buffers will continue to share a common default value.
  6349. (The buffer-local value of VARIABLE starts out as the same value
  6350. VARIABLE previously had.  If VARIABLE was void, it remains void.)
  6351. See also `make-variable-buffer-local'.
  6352.  
  6353. If the variable is already arranged to become local when set,
  6354. this function causes a local value to exist for this buffer,
  6355. just as if the variable were set.
  6356.  
  6357. arguments: (VARIABLE)
  6358. Fkill-local-variable
  6359. Make VARIABLE no longer have a separate value in the current buffer.
  6360. From now on the default value will apply in this buffer.
  6361.  
  6362. arguments: (VARIABLE)
  6363. Fsymbol-value-in-buffer
  6364. Return the value of SYMBOL in BUFFER, or UNBOUND-VALUE if it is unbound.
  6365.  
  6366. arguments: (SYMBOL BUFFER UNBOUND-VALUE)
  6367. Flocal-variable-p
  6368. Return t if SYMBOL's value is local to BUFFER.
  6369. If optional third arg AFTER-SET is true, return t if SYMBOL would be
  6370. buffer-local after it is set, regardless of whether it is so presently.
  6371.  
  6372. arguments: (SYMBOL BUFFER &optional AFTER-SET)
  6373. Fdefvaralias
  6374. Define a variable as an alias for another variable.
  6375. Thenceforth, any operations performed on VARIABLE will actually be
  6376. performed on ALIAS.  Both VARIABLE and ALIAS should be symbols.
  6377. If ALIAS is nil, remove any aliases for VARIABLE.
  6378. ALIAS can itself be aliased, and the chain of variable aliases
  6379. will be followed appropriately.
  6380. If VARIABLE already has a value, this value will be shadowed
  6381. until the alias is removed, at which point it will be restored.
  6382. Currently VARIABLE cannot be a built-in variable, a variable that
  6383. has a buffer-local value in any buffer, or the symbols nil or t.
  6384.  
  6385. arguments: (VARIABLE ALIAS)
  6386. Fvariable-alias
  6387. If VARIABLE is aliased to another variable, return that variable.
  6388. VARIABLE should be a symbol.  If VARIABLE is not aliased, return nil.
  6389. Variable aliases are created with `defvaralias'.  See also
  6390. `indirect-variable'.
  6391.  
  6392. arguments: (VARIABLE)
  6393. Findirect-variable
  6394. Return the variable at the end of OBJECT's variable-alias chain.
  6395. If OBJECT is a symbol, follow all variable aliases and return
  6396. the final (non-aliased) symbol.  Variable aliases are created with
  6397. the function `defvaralias'.
  6398. If OBJECT is not a symbol, just return it.
  6399. Signal a cyclic-variable-indirection error if there is a loop in the
  6400. variable chain of symbols.
  6401.  
  6402. arguments: (OBJECT)
  6403. Vobarray
  6404. Symbol table for use by `intern' and `read'.
  6405. It is a vector whose length ought to be prime for best results.
  6406. The vector's contents don't make sense if examined from Lisp programs;
  6407. to find all the symbols in an obarray, use `mapatoms'.Fexpand-abbrev
  6408. Expand the abbrev before point, if there is an abbrev there.
  6409. Effective when explicitly called even when `abbrev-mode' is nil.
  6410. Returns t if expansion took place.
  6411.  
  6412. arguments: ()
  6413. Vglobal-abbrev-table
  6414. The abbrev table whose abbrevs affect all buffers.
  6415. Each buffer may also have a local abbrev table.
  6416. If it does, the local table overrides the global one
  6417. for any particular abbrev defined in both.Vlast-abbrev
  6418. The abbrev-symbol of the last abbrev expanded.
  6419. See the function `abbrev-symbol'.Vlast-abbrev-text
  6420. The exact text of the last abbrev expanded.
  6421. nil if the abbrev has already been unexpanded.Vlast-abbrev-location
  6422. The location of the start of the last abbrev expanded.Vabbrev-start-location
  6423. Buffer position for `expand-abbrev' to use as the start of the abbrev.
  6424. nil means use the word before point as the abbrev.
  6425. Calling `expand-abbrev' sets this to nil.Vabbrev-start-location-buffer
  6426. Buffer that `abbrev-start-location' has been set for.
  6427. Trying to expand an abbrev in any other buffer clears `abbrev-start-location'.Vabbrev-all-caps
  6428. *Set non-nil means expand multi-word abbrevs all caps if abbrev was so.Vpre-abbrev-expand-hook
  6429. Function or functions to be called before abbrev expansion is done.
  6430. This is the first thing that `expand-abbrev' does, and so this may change
  6431. the current abbrev table before abbrev lookup happens.Fsyntax-table-p
  6432. Return t if ARG is a syntax table.
  6433. Any vector of 256 elements will do.
  6434.  
  6435. arguments: (OBJ)
  6436. Fsyntax-table
  6437. Return the current syntax table.
  6438. This is the one specified by the current buffer, or by BUFFER if it
  6439. is non-nil.
  6440.  
  6441. arguments: (&optional BUFFER)
  6442. Fstandard-syntax-table
  6443. Return the standard syntax table.
  6444. This is the one used for new buffers.
  6445.  
  6446. arguments: ()
  6447. Fcopy-syntax-table
  6448. Construct a new syntax table and return it.
  6449. It is a copy of the TABLE, which defaults to the standard syntax table.
  6450.  
  6451. arguments: (&optional TABLE)
  6452. Fset-syntax-table
  6453. Select a new syntax table for BUFFER.
  6454. One argument, a syntax table.
  6455. BUFFER defaults to the current buffer if omitted.
  6456.  
  6457. arguments: (TABLE &optional BUFFER)
  6458. Fsyntax-designator-chars
  6459. Return a string of the recognized syntax designator chars.
  6460. The chars are ordered by their internal syntax codes, which are
  6461. numbered starting at 0.
  6462.  
  6463. arguments: ()
  6464. Fchar-syntax
  6465. Return the syntax code of CHAR, described by a character.
  6466. For example, if CHAR is a word constituent, the character `?w' is returned.
  6467. The characters that correspond to various syntax codes
  6468. are listed in the documentation of `modify-syntax-entry'.
  6469. Optional second argument TABLE defaults to the current buffer's
  6470. syntax table.
  6471.  
  6472. arguments: (CH &optional TABLE)
  6473. Fmatching-paren
  6474. Return the matching parenthesis of CHAR, or nil if none.
  6475. Optional second argument TABLE defaults to the current buffer's
  6476. syntax table.
  6477.  
  6478. arguments: (CH &optional TABLE)
  6479. Fforward-word
  6480. Move point forward ARG words (backward if ARG is negative).
  6481. Normally returns t.
  6482. If an edge of the buffer is reached, point is left there
  6483. and nil is returned.
  6484.  
  6485. arguments: (COUNT &optional BUFFER)
  6486. Fforward-comment
  6487. Move forward across up to N comments.  If N is negative, move backward.
  6488. Stop scanning if we find something other than a comment or whitespace.
  6489. Set point to where scanning stops.
  6490. If N comments are found as expected, with nothing except whitespace
  6491. between them, return t; otherwise return nil.
  6492. Point is set in either case.
  6493. Optional argument BUFFER defaults to the current buffer.
  6494.  
  6495. arguments: (N &optional BUFFER)
  6496. Fscan-lists
  6497. Scan from character number FROM by COUNT lists.
  6498. Returns the character number of the position thus found.
  6499.  
  6500. If DEPTH is nonzero, paren depth begins counting from that value,
  6501. only places where the depth in parentheses becomes zero
  6502. are candidates for stopping; COUNT such places are counted.
  6503. Thus, a positive value for DEPTH means go out levels.
  6504.  
  6505. Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
  6506.  
  6507. If the beginning or end of (the accessible part of) the buffer is reached
  6508. and the depth is wrong, an error is signaled.
  6509. If the depth is right but the count is not used up, nil is returned.
  6510.  
  6511. If optional arg BUFFER is non-nil, scanning occurs in that buffer instead
  6512. of in the current buffer.
  6513.  
  6514. If optional arg NOERROR is non-nil, scan-lists will return nil instead of
  6515. signalling an error.
  6516.  
  6517. arguments: (FROM COUNT DEPTH &optional BUFFER NO-ERROR)
  6518. Fscan-sexps
  6519. Scan from character number FROM by COUNT balanced expressions.
  6520. If COUNT is negative, scan backwards.
  6521. Returns the character number of the position thus found.
  6522.  
  6523. Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
  6524.  
  6525. If the beginning or end of (the accessible part of) the buffer is reached
  6526. in the middle of a parenthetical grouping, an error is signaled.
  6527. If the beginning or end is reached between groupings
  6528. but before count is used up, nil is returned.
  6529.  
  6530. If optional arg BUFFER is non-nil, scanning occurs in that buffer instead
  6531. of in the current buffer.
  6532.  
  6533. If optional arg NOERROR is non-nil, scan-sexps will return nil instead of
  6534. signalling an error.
  6535.  
  6536. arguments: (FROM COUNT &optional BUFFER NO-ERROR)
  6537. Fbackward-prefix-chars
  6538. Move point backward over any number of chars with prefix syntax.
  6539. This includes chars with "quote" or "prefix" syntax (' or p).
  6540.  
  6541. Optional arg BUFFER defaults to the current buffer.
  6542.  
  6543. arguments: (&optional BUFFER)
  6544. Fparse-partial-sexp
  6545. Parse Lisp syntax starting at FROM until TO; return status of parse at TO.
  6546. Parsing stops at TO or when certain criteria are met;
  6547.  point is set to where parsing stops.
  6548. If fifth arg STATE is omitted or nil,
  6549.  parsing assumes that FROM is the beginning of a function.
  6550. Value is a list of eight elements describing final state of parsing:
  6551.  0. depth in parens.
  6552.  1. character address of start of innermost containing list; nil if none.
  6553.  2. character address of start of last complete sexp terminated.
  6554.  3. non-nil if inside a string.
  6555.     (It is the character that will terminate the string.)
  6556.  4. t if inside a comment.
  6557.  5. t if following a quote character.
  6558.  6. the minimum paren-depth encountered during this scan.
  6559.  7. nil if in comment style a, or not in a comment; t if in comment style b
  6560. If third arg TARGETDEPTH is non-nil, parsing stops if the depth
  6561. in parentheses becomes equal to TARGETDEPTH.
  6562. Fourth arg STOPBEFORE non-nil means stop when come to
  6563.  any character that starts a sexp.
  6564. Fifth arg STATE is an eight-element list like what this function returns.
  6565. It is used to initialize the state of the parse.  Its second and third
  6566. elements are ignored.
  6567. Sixth arg COMMENTSTOP non-nil means stop at the start of a comment.
  6568.  
  6569. arguments: (FROM TO &optional TARGETDEPTH STOPBEFORE OLDSTATE COMMENTSTOP BUFFER)
  6570. Vparse-sexp-ignore-comments
  6571. Non-nil means `forward-sexp', etc., should treat comments as whitespace.Vwords-include-escapes
  6572. Non-nil means `forward-word', etc., should treat escape chars part of words.Fbuffer-syntactic-context
  6573. Return the syntactic context of BUFFER at point.
  6574. If BUFFER is nil or omitted, the current buffer is assumed.
  6575. The returned value is one of the following symbols:
  6576.  
  6577.     nil        ; meaning no special interpretation
  6578.     string        ; meaning point is within a string
  6579.     comment        ; meaning point is within a line comment
  6580.     block-comment    ; meaning point is within a block comment
  6581.  
  6582. See also the function `buffer-syntactic-context-depth', which returns
  6583. the current nesting-depth within all parenthesis-syntax delimiters
  6584. and the function `syntactically-sectionize', which will map a function
  6585. over each syntactic context in a region.
  6586.  
  6587. WARNING: this may alter match-data.
  6588.  
  6589. arguments: (&optional BUFFER)
  6590. Fbuffer-syntactic-context-depth
  6591. Return the depth within all parenthesis-syntax delimiters at point.
  6592. If BUFFER is nil or omitted, the current buffer is assumed.
  6593. WARNING: this may alter match-data.
  6594.  
  6595. arguments: (&optional BUFFER)
  6596. Fsyntactically-sectionize
  6597. Calls FUNCTION for each contiguous syntactic context in the region.
  6598. Calls the given function with four arguments: the start and end of the
  6599. region, a symbol representing the syntactic context, and the current
  6600. depth (as returned by the functions `buffer-syntactic-context' and
  6601. `buffer-syntactic-context-depth').  When this function is called, the
  6602. current buffer will be set to BUFFER.
  6603.  
  6604. WARNING: this may alter match-data.
  6605.  
  6606. arguments: (FUNCTION START END &optional BUFFER)
  6607. Fbyte-code
  6608. Function used internally in byte-compiled code.
  6609. The first argument is a string of byte code; the second, a vector of constants;
  6610. the third, the maximum stack depth used in this function.
  6611. If the third argument is incorrect, Emacs may crash.
  6612.  
  6613. arguments: (BYTESTR VECTOR MAXDEPTH)
  6614. Vbyte-code-meter
  6615. A vector of vectors which holds a histogram of byte-code usage.
  6616. (aref (aref byte-code-meter 0) CODE) indicates how many times the byte
  6617. opcode CODE has been executed.
  6618. (aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0,
  6619. indicates how many times the byte opcodes CODE1 and CODE2 have been
  6620. executed in succession.Vbyte-metering-on
  6621. If non-nil, keep profiling information on byte code usage.
  6622. The variable byte-code-meter indicates how often each byte opcode is used.
  6623. If a symbol has a property named `byte-code-meter' whose value is an
  6624. integer, it is incremented each time that symbol's function is called.Fprocessp
  6625. Return t if OBJECT is a process.
  6626.  
  6627. arguments: (OBJ)
  6628. Fprocess-list
  6629. Return a list of all processes.
  6630.  
  6631. arguments: ()
  6632. Fget-process
  6633. Return the process named NAME, or nil if there is none.
  6634.  
  6635. arguments: (NAME)
  6636. Fget-buffer-process
  6637. Return the (or, a) process associated with BUFFER.
  6638. BUFFER may be a buffer or the name of one.
  6639.  
  6640. arguments: (NAME)
  6641. Fprocess-id
  6642. Return the process id of PROCESS.
  6643. This is the pid of the Unix process which PROCESS uses or talks to.
  6644. For a network connection, this value is a cons of
  6645.  (foreign-network-port . foreign-host-name).
  6646.  
  6647. arguments: (PROC)
  6648. Fprocess-name
  6649. Return the name of PROCESS, as a string.
  6650. This is the name of the program invoked in PROCESS,
  6651. possibly modified to make it unique among process names.
  6652.  
  6653. arguments: (PROC)
  6654. Fprocess-command
  6655. Return the command that was executed to start PROCESS.
  6656. This is a list of strings, the first string being the program executed
  6657. and the rest of the strings being the arguments given to it.
  6658.  
  6659. arguments: (PROC)
  6660. Fstart-process-internal
  6661. Start a program in a subprocess.  Return the process object for it.
  6662. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS
  6663. NAME is name for process.  It is modified if necessary to make it unique.
  6664. BUFFER is the buffer or (buffer-name) to associate with the process.
  6665.  Process output goes at end of that buffer, unless you specify
  6666.  an output stream or filter function to handle the output.
  6667.  BUFFER may be also nil, meaning that this process is not associated
  6668.  with any buffer
  6669. Third arg is program file name.  It is searched for as in the shell.
  6670. Remaining arguments are strings to give program as arguments.
  6671. INCODE and OUTCODE specify the coding-system objects used in input/output
  6672.  from/to the process.Fopen-network-stream-internal
  6673. Open a TCP connection for a service to a host.
  6674. Returns a subprocess-object to represent the connection.
  6675. Input and output work as for subprocesses; `delete-process' closes it.
  6676. Args are NAME BUFFER HOST SERVICE.
  6677. NAME is name for process.  It is modified if necessary to make it unique.
  6678. BUFFER is the buffer (or buffer-name) to associate with the process.
  6679.  Process output goes at end of that buffer, unless you specify
  6680.  an output stream or filter function to handle the output.
  6681.  BUFFER may be also nil, meaning that this process is not associated
  6682.  with any buffer
  6683. Third arg is name of the host to connect to, or its IP address.
  6684. Fourth arg SERVICE is name of the service desired, or an integer
  6685.  specifying a port number to connect to.
  6686.  
  6687. arguments: (NAME BUFFER HOST SERVICE)
  6688. Fset-process-window-size
  6689. Tell PROCESS that it has logical window size HEIGHT and WIDTH.
  6690.  
  6691. arguments: (PROC HEIGHT WIDTH)
  6692. Fprocess-tty-name
  6693. Return the name of the terminal PROCESS uses, or nil if none.
  6694. This is the terminal that the process itself reads and writes on,
  6695. not the name of the pty that Emacs uses to talk with that terminal.
  6696.  
  6697. arguments: (PROC)
  6698. Fset-process-buffer
  6699. Set buffer associated with PROCESS to BUFFER (a buffer, or nil).
  6700.  
  6701. arguments: (PROC BUFFER)
  6702. Fprocess-buffer
  6703. Return the buffer PROCESS is associated with.
  6704. Output from PROCESS is inserted in this buffer
  6705. unless PROCESS has a filter.
  6706.  
  6707. arguments: (PROC)
  6708. Fprocess-mark
  6709. Return the marker for the end of the last output from PROCESS.
  6710.  
  6711. arguments: (PROC)
  6712. Fset-process-filter
  6713. Give PROCESS the filter function FILTER; nil means no filter.
  6714. t means stop accepting output from the process.
  6715. When a process has a filter, each time it does output
  6716. the entire string of output is passed to the filter.
  6717. The filter gets two arguments: the process and the string of output.
  6718. If the process has a filter, its buffer is not used for output.
  6719.  
  6720. arguments: (PROC FILTER)
  6721. Fprocess-filter
  6722. Return the filter function of PROCESS; nil if none.
  6723. See `set-process-filter' for more info on filter functions.
  6724.  
  6725. arguments: (PROC)
  6726. Fprocess-send-region
  6727. Send current contents of region as input to PROCESS.
  6728. PROCESS may be a process name or an actual process.
  6729. Called from program, takes three arguments, PROCESS, START and END.
  6730. If the region is more than 500 characters long,
  6731. it is sent in several bunches.  This may happen even for shorter regions.
  6732. Output from processes can arrive in between bunches.
  6733.  
  6734. arguments: (PROCESS START END)
  6735. Fprocess-send-string
  6736. Send PROCESS the contents of STRING as input.
  6737. PROCESS may be a process name or an actual process.
  6738. Optional arguments FROM and TO specify part of STRING, see `substring'.
  6739. If STRING is more than 500 or so characters long,
  6740. it is sent in several bunches.  This may happen even for shorter strings.
  6741. Output from processes can arrive in between bunches.
  6742.  
  6743. arguments: (PROCESS STRING &optional FROM TO)
  6744. Fprocess-input-coding-system
  6745. Return PROCESS's input coding system.
  6746.  
  6747. arguments: (PROCESS)
  6748. Fprocess-output-coding-system
  6749. Return PROCESS's output coding system.
  6750.  
  6751. arguments: (PROCESS)
  6752. Fset-process-input-coding-system
  6753. Set PROCESS's input coding system to INCODE.
  6754.  
  6755. arguments: (PROCESS INCODE)
  6756. Fset-process-output-coding-system
  6757. Set PROCESS's output coding system to OUTCODE.
  6758.  
  6759. arguments: (PROCESS OUTCODE)
  6760. Fset-process-sentinel
  6761. Give PROCESS the sentinel SENTINEL; nil for none.
  6762. The sentinel is called as a function when the process changes state.
  6763. It gets two arguments: the process, and a string describing the change.
  6764.  
  6765. arguments: (PROC SENTINEL)
  6766. Fprocess-sentinel
  6767. Return the sentinel of PROCESS; nil if none.
  6768. See `set-process-sentinel' for more info on sentinels.
  6769.  
  6770. arguments: (PROC)
  6771. Fprocess-status
  6772. Return the status of PROCESS.
  6773. This is a symbol, one of these:
  6774.  
  6775. run  -- for a process that is running.
  6776. stop -- for a process stopped but continuable.
  6777. exit -- for a process that has exited.
  6778. signal -- for a process that has got a fatal signal.
  6779. open -- for a network stream connection that is open.
  6780. closed -- for a network stream connection that is closed.
  6781. nil -- if arg is a process name and no such process exists.
  6782. PROCESS may be a process, a buffer, the name of a process or buffer, or
  6783. nil, indicating the current buffer's process.
  6784.  
  6785. arguments: (PROC)
  6786. Fprocess-exit-status
  6787. Return the exit status of PROCESS or the signal number that killed it.
  6788. If PROCESS has not yet exited or died, return 0.
  6789.  
  6790. arguments: (PROC)
  6791. Finterrupt-process
  6792. Interrupt process PROCESS.  May be process or name of one.
  6793. Nil or no arg means current buffer's process.
  6794. Second arg CURRENT-GROUP non-nil means send signal to
  6795. the current process-group of the process's controlling terminal
  6796. rather than to the process's own process group.
  6797. If the process is a shell, this means interrupt current subjob
  6798. rather than the shell.
  6799.  
  6800. arguments: (&optional PROCESS CURRENT-GROUP)
  6801. Fkill-process
  6802. Kill process PROCESS.  May be process or name of one.
  6803. See function `interrupt-process' for more details on usage.
  6804.  
  6805. arguments: (&optional PROCESS CURRENT-GROUP)
  6806. Fquit-process
  6807. Send QUIT signal to process PROCESS.  May be process or name of one.
  6808. See function `interrupt-process' for more details on usage.
  6809.  
  6810. arguments: (&optional PROCESS CURRENT-GROUP)
  6811. Fstop-process
  6812. Stop process PROCESS.  May be process or name of one.
  6813. See function `interrupt-process' for more details on usage.
  6814.  
  6815. arguments: (&optional PROCESS CURRENT-GROUP)
  6816. Fcontinue-process
  6817. Continue process PROCESS.  May be process or name of one.
  6818. See function `interrupt-process' for more details on usage.
  6819.  
  6820. arguments: (&optional PROCESS CURRENT-GROUP)
  6821. Fsignal-process
  6822. Send the process with number PID the signal with code CODE.
  6823. Both PID and CODE are integers.
  6824.  
  6825. arguments: (PID SIG)
  6826. Fprocess-send-eof
  6827. Make PROCESS see end-of-file in its input.
  6828. PROCESS may be a process, a buffer, the name of a process or buffer, or
  6829. nil, indicating the current buffer's process.
  6830. If PROCESS is a network connection, or is a process communicating
  6831. through a pipe (as opposed to a pty), then you cannot send any more
  6832. text to PROCESS after you call this function.
  6833.  
  6834. arguments: (&optional PROCESS)
  6835. Fdelete-process
  6836. Delete PROCESS: kill it and forget about it immediately.
  6837. PROCESS may be a process or the name of one, or a buffer name.
  6838.  
  6839. arguments: (PROC)
  6840. Fprocess-kill-without-query
  6841. Say no query needed if PROCESS is running when Emacs is exited.
  6842. Optional second argument if non-nil says to require a query.
  6843. Value is t if a query was formerly required.
  6844.  
  6845. arguments: (PROC &optional REQUIRE-QUERY-P)
  6846. Fprocess-kill-without-query-p
  6847. Whether PROC will be killed without query if running when emacs is exited.
  6848.  
  6849. arguments: (PROC)
  6850. Vdelete-exited-processes
  6851. *Non-nil means delete processes immediately when they exit.
  6852. nil means don't delete them until `list-processes' is run.Vprocess-connection-type
  6853. Control type of device used to communicate with subprocesses.
  6854. Values are nil to use a pipe, or t or `pty' to use a pty.
  6855. The value has no effect if the system has no ptys or if all ptys are busy:
  6856. then a pipe is used in any case.
  6857. The value takes effect when `start-process' is called.Fcall-process-internal
  6858. Call PROGRAM synchronously in separate process, with coding-system specified.
  6859. Arguments are
  6860.  (PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS).
  6861. The program's input comes from file INFILE (nil means `/dev/null').
  6862. Insert output in BUFFER before point; t means current buffer;
  6863.  nil for BUFFER means discard it; 0 means discard and don't wait.
  6864. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted.
  6865. Remaining arguments are strings passed as command arguments to PROGRAM.
  6866. If BUFFER is 0, returns immediately with value nil.
  6867. Otherwise waits for PROGRAM to terminate and returns a numeric exit status
  6868.  or a signal description string.
  6869. If you quit, the process is killed with SIGINT, or SIGKILL if you
  6870.  quit again.Fgetenv
  6871. Return the value of environment variable VAR, as a string.
  6872. VAR is a string, the name of the variable.
  6873. When invoked interactively, prints the value in the echo area.
  6874.  
  6875. arguments: (VAR &optional INTERACTIVEP)
  6876. Vbinary-process-input
  6877. *If non-nil then new subprocesses are assumed to take binary input.Vbinary-process-output
  6878. *If non-nil then new subprocesses are assumed to produce binary output.Vshell-file-name
  6879. *File name to load inferior shells from.
  6880. Initialized from the SHELL environment variable.Vexec-path
  6881. *List of directories to search programs to run in subprocesses.
  6882. Each element is a string (directory name) or nil (try default directory).Vexec-directory
  6883. Directory of architecture-dependent files that come with XEmacs,
  6884. especially executable programs intended for Emacs to invoke.Vdata-directory
  6885. Directory of architecture-independent files that come with XEmacs,
  6886. intended for Emacs to use.Vdoc-directory
  6887. Directory containing the DOC file that comes with XEmacs.
  6888. This is usually the same as exec-directory.Vprocess-environment
  6889. List of environment variables for subprocesses to inherit.
  6890. Each element should be a string of the form ENVVARNAME=VALUE.
  6891. The environment which Emacs inherits is placed in this variable
  6892. when Emacs starts.Vconfigure-info-directory
  6893. For internal use by the build procedure only.
  6894. This is the name of the directory in which the build procedure installed
  6895. Emacs's info files; the default value for Info-default-directory-list
  6896. includes this.Fhashtablep
  6897. Return t if OBJ is a hashtable, else nil.
  6898.  
  6899. arguments: (OBJ)
  6900. Fmake-hashtable
  6901. Make a hashtable of initial size SIZE.
  6902.  
  6903. arguments: (SIZE)
  6904. Fcopy-hashtable
  6905. Make a new hashtable which contains the same keys and values
  6906. as the given table.  The keys and values will not themselves be copied.
  6907.  
  6908. arguments: (OLD-TABLE)
  6909. Fgethash
  6910. Find hash value for KEY in TABLE.
  6911. If there is no corresponding value, return DEFAULT (defaults to nil).
  6912.  
  6913. arguments: (KEY TABLE &optional DEFAULT)
  6914. Fremhash
  6915. Remove hash value for KEY in TABLE.
  6916.  
  6917. arguments: (KEY TABLE)
  6918. Fputhash
  6919. Hash KEY to VAL in TABLE.
  6920.  
  6921. arguments: (KEY VAL TABLE)
  6922. Fclrhash
  6923. Flush TABLE.
  6924.  
  6925. arguments: (TABLE)
  6926. Fhashtable-fullness
  6927. Return number of entries in TABLE.
  6928.  
  6929. arguments: (TABLE)
  6930. Fmaphash
  6931. Map FUNCTION over entries in TABLE, calling it with two args,
  6932. each key and value in the table.
  6933.  
  6934. arguments: (FUNCTION TABLE)
  6935. Fmake-weak-hashtable
  6936. Make a fully weak hashtable of initial size SIZE.
  6937. A weak hashtable is one whose pointers do not count as GC referents:
  6938. for any key-value pair in the hashtable, if the only remaining pointer
  6939. to either the key or the value is in a weak hash table, then the pair
  6940. will be removed from the table, and the key and value collected.  A
  6941. non-weak hash table (or any other pointer) would prevent the object
  6942. from being collected.
  6943.  
  6944. You can also create semi-weak hashtables; see `make-key-weak-hashtable'
  6945. and `make-value-weak-hashtable'.
  6946.  
  6947. arguments: (SIZE)
  6948. Fmake-key-weak-hashtable
  6949. Make a key-weak hashtable of initial size SIZE.
  6950. A key-weak hashtable is similar to a fully-weak hashtable (see
  6951. `make-weak-hashtable') except that a key-value pair will be removed
  6952. only if the key remains unmarked outside of weak hashtables.  The pair
  6953. will remain in the hashtable if the key is pointed to by something other
  6954. than a weak hashtable, even if the value is not.
  6955.  
  6956. arguments: (SIZE)
  6957. Fmake-value-weak-hashtable
  6958. Make a value-weak hashtable of initial size SIZE.
  6959. A value-weak hashtable is similar to a fully-weak hashtable (see
  6960. `make-weak-hashtable') except that a key-value pair will be removed only
  6961. if the value remains unmarked outside of weak hashtables.  The pair will
  6962. remain in the hashtable if the value is pointed to by something other
  6963. than a weak hashtable, even if the key is not.
  6964.  
  6965. arguments: (SIZE)
  6966. Fextentp
  6967. T if OBJECT is an extent.
  6968.  
  6969. arguments: (OBJECT)
  6970. Fextent-live-p
  6971. T if OBJECT is an extent and the extent has not been destroyed.
  6972.  
  6973. arguments: (OBJECT)
  6974. Fextent-detached-p
  6975. T if EXTENT is detached.
  6976.  
  6977. arguments: (EXTENT)
  6978. Fextent-buffer
  6979. Return buffer of EXTENT.
  6980.  
  6981. arguments: (EXTENT)
  6982. Fextent-start-position
  6983. Return start position of EXTENT, or nil if EXTENT is detached.
  6984.  
  6985. arguments: (EXTENT)
  6986. Fextent-end-position
  6987. Return end position of EXTENT, or nil if EXTENT is detached.
  6988.  
  6989. arguments: (EXTENT)
  6990. Fextent-length
  6991. Return length of EXTENT in characters.
  6992.  
  6993. arguments: (EXTENT)
  6994. Fnext-extent
  6995. Find next extent after EXTENT.
  6996. If EXTENT is a buffer return the first extent in the buffer.
  6997. Extents in a buffer are ordered in what is called the "display"
  6998.  order, which sorts by increasing start positions and then by *decreasing*
  6999.  end positions.
  7000. If you want to perform an operation on a series of extents, use
  7001.  `map-extents' instead of this function; it is much more efficient.
  7002.  The primary use of this function should be to enumerate all the
  7003.  extents in a buffer.
  7004. Note: The display order is not necessarily the order that `map-extents'
  7005.  processes extents in!
  7006.  
  7007. arguments: (EXTENT)
  7008. Fprevious-extent
  7009. Find last extent before EXTENT.
  7010. If EXTENT is a buffer return the last extent in the buffer.
  7011. This function is analogous to `next-extent'.
  7012.  
  7013. arguments: (EXTENT)
  7014. Fnext-e-extent
  7015. Find next extent after EXTENT using the "e" order.
  7016. If EXTENT is a buffer, return the first extent in the buffer.
  7017.  
  7018. arguments: (EXTENT)
  7019. Fprevious-e-extent
  7020. Find last extent before EXTENT using the "e" order.
  7021. If EXTENT is a buffer return the last extent in the buffer.
  7022. This function is analogous to `next-e-extent'.
  7023.  
  7024. arguments: (EXTENT)
  7025. Fnext-extent-change
  7026. Return the next position after POS where an extent begins or ends.
  7027. If POS is at the end of the buffer, POS will be returned; otherwise a
  7028.  position greater than POS will always be returned.
  7029. If BUFFER is nil, the current buffer is assumed.
  7030.  
  7031. arguments: (POS &optional BUFFER)
  7032. Fprevious-extent-change
  7033. Return the last position before POS where an extent begins or ends.
  7034. If POS is at the beginning of the buffer, POS will be returned; otherwise a
  7035.  position less than POS will always be returned.
  7036. If BUFFER is nil, the current buffer is assumed.
  7037.  
  7038. arguments: (POS &optional BUFFER)
  7039. Fextent-parent
  7040. Return the parent (if any) of EXTENT.
  7041. If an extent has a parent, it derives all its properties from that extent
  7042. and has no properties of its own.  It is possible for an extent's parent
  7043. to itself have a parent.
  7044.  
  7045. arguments: (EXTENT)
  7046. Fextent-children
  7047. Return a list of the children (if any) of EXTENT.
  7048. The children of an extent are all those extents whose parent is that extent.
  7049. This function does not recursively trace children of children.
  7050.  
  7051. arguments: (EXTENT)
  7052. Fset-extent-parent
  7053. Set the parent of EXTENT to PARENT (may be nil).
  7054. See `extent-parent'.
  7055.  
  7056. arguments: (EXTENT PARENT)
  7057. Fmake-extent
  7058. Make an extent for the range [FROM, TO) in BUFFER-OR-STRING.
  7059. BUFFER-OR-STRING defaults to the current buffer. (Note: Currently
  7060. extents over strings are not supported, but will be in the future.)
  7061. Insertions at point TO will be outside of the extent; insertions at
  7062. FROM will be inside the extent, causing the extent to grow. (This is
  7063. the same way that markers behave.) You can change the behavior of
  7064. insertions at the endpoints using `set-extent-property'.  The extent is
  7065. initially detached if both FROM and TO are nil, and in this case
  7066. BUFFER-OR-STRING defaults to nil, meaning the extent is in no buffer
  7067. and no string.
  7068.  
  7069. arguments: (FROM TO &optional BUFFER-OR-STRING)
  7070. Fcopy-extent
  7071. Make a copy of EXTENT.  It is initially detached.
  7072. Optional argument BUFFER-OR-STRING defaults to EXTENT's buffer or string.
  7073.  
  7074. arguments: (EXTENT &optional BUFFER-OR-STRING)
  7075. Fdelete-extent
  7076. Remove EXTENT from its buffer and destroy it.
  7077. This does not modify the buffer's text, only its display properties.
  7078. The extent cannot be used thereafter.
  7079.  
  7080. arguments: (EXTENT)
  7081. Fdetach-extent
  7082. Remove EXTENT from its buffer in such a way that it can be re-inserted.
  7083. An extent is also detached when all of its characters are all killed by a
  7084. deletion, unless its `detachable' property has been unset.
  7085.  
  7086. Extents which have the `duplicable' attribute are tracked by the undo
  7087. mechanism.  Detachment via `detach-extent' and string deletion is recorded,
  7088. as is attachment via `insert-extent' and string insertion.  Extent motion,
  7089. face changes, and attachment via `make-extent' and `set-extent-endpoints'
  7090. are not recorded.  This means that extent changes which are to be undo-able
  7091. must be performed by character editing, or by insertion and detachment of
  7092. duplicable extents.
  7093.  
  7094. arguments: (EXTENT)
  7095. Fset-extent-endpoints
  7096. Set the endpoints of EXTENT to START, END.
  7097. If START and END are null, call detach-extent on EXTENT.
  7098. See documentation on `detach-extent' for a discussion of undo recording.
  7099.  
  7100. arguments: (EXTENT START END)
  7101. Fextent-in-region-p
  7102. Return whether EXTENT overlaps a specified region.
  7103. This is equivalent to whether `map-extents' would visit EXTENT when called
  7104. with these args.
  7105.  
  7106. arguments: (EXTENT &optional FROM TO FLAGS)
  7107. Fmap-extents
  7108. Map FUNCTION over the extents which overlap a region in BUFFER.
  7109. The region is normally bounded by [FROM, TO) (i.e. the beginning of the
  7110. region is closed and the end of the region is open), but this can be
  7111. changed with the FLAGS argument (see below for a complete discussion).
  7112.  
  7113. FUNCTION is called with the arguments (extent, MAPARG).  The arguments
  7114. BUFFER, FROM, TO, MAPARG, and CLOSED-END are all optional and default to
  7115. the current buffer, the beginning of BUFFER, the end of BUFFER, nil, and
  7116. nil, respectively.  MAP-EXTENTS returns the first non-nil result produced
  7117. by FUNCTION, and no more calls to FUNCTION are made after it returns
  7118. non-nil.
  7119.  
  7120. If BUFFER is an extent, FROM and TO default to the extent's endpoints,
  7121. and the mapping omits that extent and its predecessors.  This feature
  7122. supports restarting a loop based on `map-extents'.
  7123.  
  7124. An extent overlaps the region if there is any point in the extent that is
  7125. also in the region. (For the purpose of overlap, zero-length extents and
  7126. regions are treated as closed on both ends regardless of their endpoints'
  7127. specified open/closedness.) Note that the endpoints of an extent or region
  7128. are considered to be in that extent or region if and only if the
  7129. corresponding end is closed.  For example, the extent [5,7] overlaps the
  7130. region [2,5] because 5 is in both the extent and the region.  However, (5,7]
  7131. does not overlap [2,5] because 5 is not in the extent, and neither [5,7] nor
  7132. (5,7] overlaps the region [2,5) because 5 is not in the region.
  7133.  
  7134. The optional FLAGS can be a symbol or a list of one or more symbols,
  7135. modifying the behavior of `map-extents'.  Allow symbols are:
  7136.  
  7137. end-closed        The region's end is closed.
  7138.  
  7139. start-open        The region's start is open.
  7140.  
  7141. all-extents-closed    Treat all extents as closed on both ends for the
  7142.             purpose of determining whether they overlap the
  7143.             region, irrespective of their actual open- or
  7144.             closedness.
  7145. all-extents-open    Treat all extents as open on both ends.
  7146. all-extents-closed-open    Treat all extents as start-closed, end-open.
  7147. all-extents-open-closed    Treat all extents as start-open, end-closed.
  7148.  
  7149. start-in-region        In addition to the above conditions for extent
  7150.             overlap, the extent's start position must lie within
  7151.             the specified region.  Note that, for this
  7152.             condition, open start positions are treated as if
  7153.             0.5 was added to the endpoint's value, and open
  7154.             end positions are treated as if 0.5 was subtracted
  7155.             from the endpoint's value.
  7156. end-in-region        The extent's end position must lie within the
  7157.             region.
  7158. start-and-end-in-region    Both the extent's start and end positions must lie
  7159.             within the region.
  7160. start-or-end-in-region    Either the extent's start or end position must lie
  7161.             within the region.
  7162.  
  7163. negate-in-region    The condition specified by a `*-in-region' flag
  7164.             must NOT hold for the extent to be considered.
  7165.  
  7166.  
  7167. At most one of `all-extents-closed', `all-extents-open',
  7168. `all-extents-closed-open', and `all-extents-open-closed' may be specified.
  7169.  
  7170. At most one of `start-in-region', `end-in-region',
  7171. `start-and-end-in-region', and `start-or-end-in-region' may be specified.
  7172.  
  7173. If optional arg PROPERTY is non-nil, only extents with that property set
  7174. on them will be visited.  If optional arg VALUE is non-nil, only extents
  7175. whose value for that property is `eq' to VALUE will be visited.
  7176.  
  7177. arguments: (FUNCTION &optional BUFFER FROM TO MAPARG FLAGS PROPERTY VALUE)
  7178. Fmap-extent-children
  7179. Map FUNCTION over the extents in the region from FROM to TO.
  7180. FUNCTION is called with arguments (extent, MAPARG).  See `map-extents'
  7181. for a full discussion of the arguments FROM, TO, and FLAGS.
  7182.  
  7183. The arguments are the same as for `map-extents', but this function differs
  7184. in that it only visits extents which start in the given region, and also
  7185. in that, after visiting an extent E, it skips all other extents which start
  7186. inside E but end before E's end.
  7187.  
  7188. Thus, this function may be used to walk a tree of extents in a buffer:
  7189.     (defun walk-extents (buffer &optional ignore)
  7190.      (map-extent-children 'walk-extents buffer))
  7191.  
  7192. arguments: (FUNCTION &optional BUFFER FROM TO MAPARG FLAGS PROPERTY VALUE)
  7193. Fextent-at
  7194. Find "smallest" extent at POS in BUFFER having PROPERTY set.
  7195. An extent is "at" POS if it overlaps the region (POS, POS+1); i.e. if
  7196.  it covers the character after POS.  "Smallest" means the extent
  7197.  that comes last in the display order; this normally means the extent
  7198.  whose start position is closest to POS.  See `next-extent' for more
  7199.  information.
  7200. BUFFER defaults to the current buffer.
  7201. PROPERTY defaults to nil, meaning that any extent will do.
  7202. Properties are attached to extents with `set-extent-property', which see.
  7203. Returns nil if POS is invalid or there is no matching extent at POS.
  7204. If the fourth argument BEFORE is not nil, it must be an extent; any returned
  7205.  extent will precede that extent.  This feature allows `extent-at' to be
  7206.  used by a loop over extents.
  7207.  
  7208. arguments: (POS &optional BUFFER PROPERTY BEFORE)
  7209. Fset-extent-begin-glyph
  7210. Display a bitmap, subwindow or string at the beginning of EXTENT.
  7211. BEGIN-GLYPH must be a glyph object.  The layout policy defaults to `text'.
  7212.  
  7213. arguments: (EXTENT BEGIN-GLYPH &optional LAYOUT)
  7214. Fset-extent-end-glyph
  7215. Display a bitmap, subwindow or string at the end of the EXTENT.
  7216. END-GLYPH must be a glyph object.  The layout policy defaults to `text'.
  7217.  
  7218. arguments: (EXTENT END-GLYPH &optional LAYOUT)
  7219. Fextent-begin-glyph
  7220. Return the glyph object displayed at the beginning of EXTENT.
  7221. If there is none, nil is returned.
  7222.  
  7223. arguments: (EXTENT-OBJ)
  7224. Fextent-end-glyph
  7225. Return the glyph object displayed at the end of EXTENT.
  7226. If there is none, nil is returned.
  7227.  
  7228. arguments: (EXTENT-OBJ)
  7229. Fset-extent-begin-glyph-layout
  7230. Set the layout policy of the given extent's begin glyph.
  7231. Access this using the `extent-begin-glyph-layout' function.
  7232.  
  7233. arguments: (EXTENT LAYOUT)
  7234. Fset-extent-end-glyph-layout
  7235. Set the layout policy of the given extent's end glyph.
  7236. Access this using the `extent-end-glyph-layout' function.
  7237.  
  7238. arguments: (EXTENT LAYOUT)
  7239. Fextent-begin-glyph-layout
  7240. Return the layout policy associated with the given extent's begin glyph.
  7241. Set this using the `set-extent-begin-glyph-layout' function.
  7242.  
  7243. arguments: (EXTENT)
  7244. Fextent-end-glyph-layout
  7245. Return the layout policy associated with the given extent's end glyph.
  7246. Set this using the `set-extent-end-glyph-layout' function.
  7247.  
  7248. arguments: (EXTENT)
  7249. Fset-extent-priority
  7250. Changes the display priority of EXTENT.
  7251. When the extent attributes are being merged for display, the priority
  7252. is used to determine which extent takes precedence in the event of a
  7253. conflict (two extents whose faces both specify font, for example: the
  7254. font of the extent with the higher priority will be used).
  7255. Extents are created with priority 0; priorities may be negative.
  7256.  
  7257. arguments: (EXTENT PRI)
  7258. Fextent-priority
  7259. Return the display priority of EXTENT; see `set-extent-priority'.
  7260.  
  7261. arguments: (EXTENT)
  7262. Fset-extent-property
  7263. Change a property of an extent.
  7264. PROPERTY may be any symbol; the value stored may be accessed with
  7265.  the `extent-property' function.
  7266. The following symbols have predefined meanings:
  7267.  
  7268.  detached    Removes the extent from its buffer; setting this is the same
  7269.         as calling `detach-extent'.
  7270.  
  7271.  destroyed    Removes the extent from its buffer, and makes it unusable in
  7272.         the future; this is the same calling `delete-extent'.
  7273.  
  7274.  priority    Change redisplay priority; same as `set-extent-priority'.
  7275.  
  7276.  start-open    Whether the set of characters within the extent is treated
  7277.         being open on the left, that is, whether the start position
  7278.         is an exclusive, rather than inclusive, boundary.  If true,
  7279.         then characters inserted exactly at the beginning of the
  7280.         extent will remain outside of the extent; otherwise they
  7281.         will go into the extent, extending it.
  7282.  
  7283.  end-open    Whether the set of characters within the extent is treated
  7284.         being open on the right, that is, whether the end position
  7285.         is an exclusive, rather than inclusive, boundary.  If true,
  7286.         then characters inserted exactly at the end of the extent
  7287.         will remain outside of the extent; otherwise they will go
  7288.         into the extent, extending it.
  7289.  
  7290.         By default, extents have the `end-open' but not the
  7291.         `start-open' property set.
  7292.  
  7293.  read-only    Text within this extent will be unmodifiable.
  7294.  
  7295.  detachable    Whether the extent gets detached (as with `detach-extent')
  7296.                 when all the text within the extent is deleted.  This
  7297.         is true by default.  If this property is not set, the
  7298.         extent becomes a zero-length extent when its text is
  7299.         deleted. (In such a case, the `start-open' property is
  7300.         automatically removed if both the `start-open' and
  7301.         `end-open' properties are set, since zero-length extents
  7302.         open on both ends are not allowed.)
  7303.  
  7304.  face        The face in which to display the text.  Setting this is the
  7305.         same as calling `set-extent-face'.
  7306.  
  7307.  highlight    Highlight the extent when the mouse moves over it.
  7308.  
  7309.  duplicable    Whether this extent should be copied into strings, so that
  7310.         kill, yank, and undo commands will restore or copy it.
  7311.  
  7312.  unique        Meaningful only in conjunction with `duplicable'.  When this
  7313.         is set, there may be only one instance of this extent
  7314.         attached at a time: if it is copied to the kill ring and
  7315.         then yanked, the extent is not copied.  If, however, it is
  7316.         killed (removed from the buffer) and then yanked, it will
  7317.         be re-attached at the new position.
  7318.  
  7319.  invisible    Text under this extent is treated as not present for the
  7320.          purpose of redisplay.  The text is still visible to other
  7321.         functions that examine a buffer's text, however.
  7322.  
  7323.  intangible    (not yet implemented) Text under this extent is treated as
  7324.                 not present.  Neither redisplay nor any other functions that
  7325.         examine a buffer's text will see the text under this extent.
  7326.  
  7327.  keymap        This keymap is consulted for mouse clicks on this extent, or
  7328.         keypresses made while point is within the extent.
  7329.  
  7330.  copy-function    This is a hook that is run when a duplicable extent is about
  7331.         to be copied from a buffer to a string (or the kill ring).
  7332.         It is called with three arguments, the extent, and the
  7333.         buffer-positions within it which are being copied.  If this
  7334.         function returns nil, then the extent will not be copied;
  7335.         otherwise it will.
  7336.  
  7337.  paste-function This is a hook that is run when a duplicable extent is
  7338.         about to be copied from a string (or the kill ring) into a
  7339.         buffer.  It is called with three arguments, the original
  7340.         extent, and the buffer positions which the copied extent
  7341.         will occupy.  (This hook is run after the corresponding text
  7342.         has already been inserted into the buffer.)  Note that the
  7343.         extent argument may be detached when this function is run.
  7344.         If this function returns nil, no extent will be inserted.
  7345.         Otherwise, there will be an extent covering the range in
  7346.         question.
  7347.  
  7348.         If the original extent is not attached to a buffer, then it
  7349.         will be re-attached at this range.  Otherwise, a copy will
  7350.         be made, and that copy attached here.
  7351.  
  7352.         The copy-function and paste-function are meaningful only for
  7353.         extents with the `duplicable' flag set, and if they are not
  7354.         specified, behave as if `t' was the returned value.  When
  7355.         these hooks are invoked, the current buffer is the buffer
  7356.         which the extent is being copied from/to, respectively.
  7357.  
  7358. arguments: (EXTENT PROPERTY VALUE)
  7359. Fextent-property
  7360. Return EXTENT's value for property PROPERTY.
  7361. See `set-extent-property' for the built-in property names.
  7362.  
  7363. arguments: (EXTENT PROPERTY)
  7364. Fextent-properties
  7365. Return a property list of the attributes of the given extent.
  7366. Do not modify this list; use `set-extent-property' instead.
  7367.  
  7368. arguments: (EXTENT)
  7369. Fforce-highlight-extent
  7370. Highlight or unhighlight the given extent.
  7371. If the second arg is non-nil, it will be highlighted, else dehighlighted.
  7372. This is the same as `highlight-extent', except that it will work even
  7373. on extents without the 'highlight property.
  7374.  
  7375. arguments: (EXTENT-OBJ &optional HIGHLIGHT-P)
  7376. Fhighlight-extent
  7377. Highlight the given extent, if it is highlightable
  7378. (that is, if it has the 'highlight property).
  7379. If the second arg is non-nil, it will be highlighted, else dehighlighted.
  7380. Highlighted extents are displayed as if they were merged with the 'highlight
  7381. face.
  7382.  
  7383. arguments: (EXTENT-OBJ &optional HIGHLIGHT-P)
  7384. Finsert-extent
  7385. Insert EXTENT from START to END in the current buffer.
  7386. This operation does not insert any characters,
  7387. but otherwise acts like `insert' of a string whose
  7388. string-extent-data calls for EXTENT to be inserted.
  7389. Returns the newly-inserted extent.
  7390. The fourth arg, NO-HOOKS, can be used to inhibit the running of the
  7391.  extent's `paste-function' property if it has one.
  7392. See documentation on `detach-extent' for a discussion of undo recording.
  7393.  
  7394. arguments: (EXTENT &optional START END NO-HOOKS)
  7395. Fstring-extent-data
  7396. Return the saved extent data associated with the given string.
  7397.  
  7398.   NOTE: this function may go away in the future, in favor of making
  7399.   `map-extents' accept a string as an argument.
  7400.  
  7401. The format is a list of extent-replica objects, each with an extent
  7402. and start and end positions within the string itself.
  7403. Set this using the `set-string-extent-data' function.
  7404.  
  7405. The `concat' function logically concatenates this list, reconstructing
  7406. the extent information with adjusted start and end positions.
  7407.  
  7408. When `buffer-substring' or a similar function creates a string,
  7409. it stores an entry on this list for every `duplicable' extent overlapping
  7410. the string.  See `set-extent-property'.
  7411.  
  7412. When `insert' or a similar function inserts the string into a buffer,
  7413. each saved extent is copied into the buffer.  If the saved extent is
  7414. already in the buffer at an adjacent location, it is extended.  If the
  7415. saved extent is detached from the buffer, it is reattached.  If the saved
  7416. extent is already attached, or is detached from a different buffer, it is
  7417. copied as if by `copy-extent', and the extent's `paste-function' is
  7418. consulted.  This entire sequence of events is also available in the
  7419. function `insert-extent'.
  7420.  
  7421. arguments: (STRING)
  7422. Fset-string-extent-data
  7423. Set the saved extent data associated with the given string.
  7424. Access this using the `string-extent-data' function.
  7425.  
  7426. arguments: (STRING DATA)
  7427. Fmake-extent-replica
  7428. Make an object suitable for use with `set-string-extent-data'.
  7429. The arguments are EXTENT, START, and END.
  7430. There are no mutator functions for this data structure, only accessors.
  7431.  
  7432. arguments: (EXTENT START END)
  7433. Fextent-replica-p
  7434. T if OBJECT is an extent replica.
  7435.  
  7436. arguments: (OBJECT)
  7437. Fextent-replica-live-p
  7438. T if OBJECT is an extent replica that has not been destroyed.
  7439.  
  7440. arguments: (OBJECT)
  7441. Fextent-replica-extent
  7442. Return the extent of the specified extent replica.
  7443. See `make-extent-replica'.
  7444.  
  7445. arguments: (EXTENT-REPLICA)
  7446. Fextent-replica-start
  7447. Return the start of the specified extent replica.
  7448. See `make-extent-replica'.
  7449.  
  7450. arguments: (EXTENT-REPLICA)
  7451. Fextent-replica-end
  7452. Return the end of the specified extent replica.
  7453. See `make-extent-replica'.
  7454.  
  7455. arguments: (EXTENT-REPLICA)
  7456. Fput-text-property
  7457. Adds the given property/value to all characters in the specified region.
  7458. The property is conceptually attached to the characters rather than the
  7459. region.  The properties are copied when the characters are copied/pasted.
  7460.  
  7461. arguments: (START END PROP VALUE &optional BUFFER)
  7462. Fput-nonduplicable-text-property
  7463. Adds the given property/value to all characters in the specified region.
  7464. The property is conceptually attached to the characters rather than the
  7465. region, however the properties will not be copied when the characters
  7466. are copied.
  7467.  
  7468. arguments: (START END PROP VALUE &optional BUFFER)
  7469. Fadd-text-properties
  7470. Add properties to the characters from START to END.
  7471. The third argument PROPS is a property list specifying the property values
  7472. to add.  The optional fourth argument, OBJECT, is the buffer containing the
  7473. text.  Returns t if any property was changed, nil otherwise.
  7474.  
  7475. arguments: (START END PROPS &optional BUFFER)
  7476. Fremove-text-properties
  7477. Remove the given properties from all characters in the specified region.
  7478. PROPS should be a plist, but the values in that plist are ignored (treated
  7479. as nil).  Returns t if any property was changed, nil otherwise.
  7480.  
  7481. arguments: (START END PROPS &optional BUFFER)
  7482. Ftext-prop-extent-paste-function
  7483. Used as the `paste-function' property of `text-prop' extents.
  7484.  
  7485. arguments: (EXTENT FROM TO)
  7486. Fnext-single-property-change
  7487. Return the position of next property change for a specific property.
  7488. Scans characters forward from POS till it finds a change in the PROP
  7489.  property, then returns the position of the change.  The optional third
  7490.  argument BUFFER is the buffer to scan (defaults to the current buffer).
  7491. The property values are compared with `eq'.
  7492. Return nil if the property is constant all the way to the end of BUFFER.
  7493. If the value is non-nil, it is a position greater than POS, never equal.
  7494.  
  7495. If the optional fourth argument LIMIT is non-nil, don't search
  7496.  past position LIMIT; return LIMIT if nothing is found before LIMIT.
  7497. If two or more extents with conflicting non-nil values for PROP overlap
  7498.  a particular character, it is undefined which value is considered to be
  7499.  the value of PROP. (Note that this situation will not happen if you always
  7500.  use the text-property primitives.)
  7501.  
  7502. arguments: (POS PROP &optional BUFFER LIMIT)
  7503. Fprevious-single-property-change
  7504. Return the position of next property change for a specific property.
  7505. Scans characters backward from POS till it finds a change in the PROP
  7506.  property, then returns the position of the change.  The optional third
  7507.  argument BUFFER is the buffer to scan (defaults to the current buffer).
  7508. The property values are compared with `eq'.
  7509. Return nil if the property is constant all the way to the start of BUFFER.
  7510. If the value is non-nil, it is a position less than POS, never equal.
  7511.  
  7512. If the optional fourth argument LIMIT is non-nil, don't search back
  7513.  past position LIMIT; return LIMIT if nothing is found until LIMIT.
  7514. If two or more extents with conflicting non-nil values for PROP overlap
  7515.  a particular character, it is undefined which value is considered to be
  7516.  the value of PROP. (Note that this situation will not happen if you always
  7517.  use the text-property primitives.)
  7518.  
  7519. arguments: (POS PROP &optional BUFFER LIMIT)
  7520. Vmouse-highlight-priority
  7521. The priority to use for the mouse-highlighting pseudo-extent
  7522. that is used to highlight extents with the `highlight' attribute set.
  7523. See `set-extent-priority'.Fwaiting-for-user-input-p
  7524. Return non-nil if XEmacs is waiting for input from the user.
  7525. This is intended for use by asynchronous timeout callbacks and by
  7526. asynchronous process output filters and sentinels (not yet implemented
  7527. in XEmacs).  It will always be nil if XEmacs is not inside of
  7528. an asynchronout timeout or process callback.
  7529.  
  7530. arguments: ()
  7531. Fplay-sound-file
  7532. Play the named sound file on DEVICE's speaker at the specified volume
  7533. (0-100, default specified by the `bell-volume' variable).
  7534. The sound file must be in the Sun/NeXT U-LAW format.
  7535.   DEVICE defaults to the selected device.
  7536.  
  7537. arguments: (FILE &optional VOLUME DEVICE)
  7538. Fplay-sound
  7539. Play a sound of the provided type.
  7540. See the variable `sound-alist'.
  7541.  
  7542. arguments: (SOUND &optional VOLUME DEVICE)
  7543. Fding
  7544. Beep, or flash the frame.
  7545. Also, unless an argument is given,
  7546. terminate any keyboard macro currently executing.
  7547. When called from lisp, the second argument is what sound to make, and
  7548. the third argument is the device to make it in (defaults to the selected
  7549. device).
  7550.  
  7551. arguments: (&optional ARG SOUND DEVICE)
  7552. Fwait-for-sounds
  7553. Wait for all sounds to finish playing on DEVICE.
  7554.  
  7555. arguments: (&optional DEVICE)
  7556. Fconnected-to-nas-p
  7557. t if connected to NAS server for sounds on DEVICE.
  7558.  
  7559. arguments: (&optional DEVICE)
  7560. Vbell-volume
  7561. *How loud to be, from 0 to 100.Vsound-alist
  7562. An alist associating names with sounds.
  7563. When `beep' or `ding' is called with one of the name symbols, the associated
  7564. sound will be generated instead of the standard beep.
  7565.  
  7566. Each element of `sound-alist' is a list describing a sound.
  7567. The first element of the list is the name of the sound being defined.
  7568. Subsequent elements of the list are alternating keyword/value pairs:
  7569.  
  7570.    Keyword:    Value:
  7571.    -------    -----
  7572.    sound    A string of raw sound data, or the name of another sound to
  7573.         play.   The symbol `t' here means use the default X beep.
  7574.    volume    An integer from 0-100, defaulting to `bell-volume'
  7575.    pitch    If using the default X beep, the pitch (Hz) to generate.
  7576.    duration    If using the default X beep, the duration (milliseconds).
  7577.  
  7578. For compatibility, elements of `sound-alist' may also be:
  7579.  
  7580.    ( sound-name . <sound> )
  7581.    ( sound-name <volume> <sound> )
  7582.  
  7583. You should probably add things to this list by calling the function
  7584. load-sound-file.
  7585.  
  7586. Caveats:
  7587.  - You can only play audio data if running on the console screen of a
  7588.    Sun SparcStation, SGI, or HP9000s700.
  7589.  
  7590.  - The pitch, duration, and volume options are available everywhere, but
  7591.    many X servers ignore the `pitch' option.
  7592.  
  7593. The following beep-types are used by emacs itself:
  7594.  
  7595.     auto-save-error    when an auto-save does not succeed
  7596.     command-error    when the emacs command loop catches an error
  7597.     undefined-key    when you type a key that is undefined
  7598.     undefined-click    when you use an undefined mouse-click combination
  7599.     no-completion    during completing-read
  7600.     y-or-n-p        when you type something other than 'y' or 'n'
  7601.     yes-or-no-p      when you type something other than 'yes' or 'no'
  7602.     default        used when nothing else is appropriate.
  7603.  
  7604. Other lisp packages may use other beep types, but these are the ones that
  7605. the C kernel of Emacs uses.Vsynchronous-sounds
  7606. Play sounds synchronously, if non-nil.
  7607. Only applies if NAS is used and supports asynchronous playing
  7608. of sounds.  Otherwise, sounds are always played synchronously.Vnative-sound-only-on-console
  7609. Non-nil value means play sounds only if XEmacs is running on the system console.
  7610. Nil means always always play sounds, even if running on a non-console tty
  7611. or a secondary X display.
  7612.  
  7613. This variable only applies to native sound support.Ffacep
  7614. Return non-nil if OBJECT is a face.
  7615.  
  7616. arguments: (OBJECT)
  7617. Ffind-face
  7618. Retrieve the face of the given name.
  7619. If FACE-OR-NAME is a face object, it is simply returned.
  7620. Otherwise, FACE-OR-NAME should be a symbol.  If there is no such face,
  7621. nil is returned.  Otherwise the associated face object is returned.
  7622.  
  7623. arguments: (FACE-OR-NAME)
  7624. Fget-face
  7625. Retrieve the face of the given name.
  7626. Same as `find-face' except an error is signalled if there is no such
  7627. face instead of returning nil.
  7628.  
  7629. arguments: (NAME)
  7630. Fface-name
  7631. Return the name of the given face.
  7632.  
  7633. arguments: (FACE)
  7634. Fface-ascent
  7635. Return the ascent portion of the FACE's height in the given DOMAIN.
  7636. If DOMAIN is nil, it will be determined from the selected window.
  7637.  
  7638. arguments: (FACE &optional DOMAIN)
  7639. Fface-descent
  7640. Return the descent portion of the FACE's height in the given DOMAIN.
  7641. If DOMAIN is nil, it will be determined from the selected window.
  7642.  
  7643. arguments: (FACE &optional DOMAIN)
  7644. Fface-width
  7645. Return the width of FACE in the given DOMAIN.
  7646. If DOMAIN is nil, it will be determined from the selected window.
  7647.  
  7648. arguments: (FACE &optional DOMAIN)
  7649. Fface-list
  7650. Return a list of the names of all defined faces.
  7651. If TEMPORARY is nil, only the permanent faces are included.
  7652. If it is t, only the temporary faces are included.  If it is any
  7653. other non-nil value both permanent and temporary are included.
  7654.  
  7655. arguments: (&optional TEMPORARY)
  7656. Fextent-face
  7657. Return the name of the face in which EXTENT is displayed, or nil
  7658. if the extent's face is unspecified.
  7659.  
  7660. arguments: (EXTENT)
  7661. Fset-extent-face
  7662. Make the given EXTENT have the graphic attributes specified by FACE.
  7663.  
  7664. arguments: (EXTENT FACE)
  7665. Fmake-face
  7666. Defines and returns a new FACE described by DOC-STRING.
  7667. You can modify the font, color, etc of a face with the set-face- functions.
  7668. If the face already exists, it is unmodified.
  7669. If TEMPORARY is non-nil, this face will cease to exist if not in use.
  7670.  
  7671. arguments: (NAME &optional DOC-STRING TEMPORARY)
  7672. Fcopy-face
  7673. Defines and returns a new face which is a copy of an existing one,
  7674. or makes an already-existing face be exactly like another. LOCALE,
  7675. TAG-SET, EXACT-P, and HOW-TO-ADD are as in `copy-specifier'.
  7676.  
  7677. arguments: (OLD-FACE NEW-NAME &optional LOCALE TAG-SET EXACT-P HOW-TO-ADD)
  7678. Fvalid-specifier-type-p
  7679. Given a SPECIFIER-TYPE, return non-nil if it is valid.
  7680. Valid types are 'generic, 'integer, boolean, 'color, 'font, 'image,
  7681. 'face-boolean, and 'toolbar.
  7682.  
  7683. arguments: (SPECIFIER-TYPE)
  7684. Fspecifier-type-list
  7685. Return a list of valid specifier types.
  7686.  
  7687. arguments: ()
  7688. Fmake-specifier
  7689. Create a new specifier.
  7690.  
  7691. A specifier is an object that can be used to keep track of a property
  7692. whose value can be per-buffer, per-window, per-frame, or per-device,
  7693. and can further be restricted to a particular device-type or device-class.
  7694. Specifiers are used, for example, for the various built-in properties of a
  7695. face; this allows a face to have different values in different frames,
  7696. buffers, etc.  For more information, see `specifier-instance',
  7697. `specifier-specs', and `add-spec-to-specifier'; or, for a detailed
  7698. description of specifiers, including how they are instantiated over a
  7699. particular domain (i.e. how their value in that domain is determined),
  7700. see the chapter on specifiers in the XEmacs Lisp Reference Manual.
  7701.  
  7702. TYPE specifies the particular type of specifier, and should be one of
  7703. the symbols 'generic, 'integer, 'boolean, 'color, 'font, 'image,
  7704. 'face-boolean, or 'toolbar.
  7705.  
  7706. For more information on particular types of specifiers, see the functions
  7707. `generic-specifier-p', `integer-specifier-p', `boolean-specifier-p',
  7708. `color-specifier-p', `font-specifier-p', `image-specifier-p',
  7709. `face-boolean-specifier-p', and `toolbar-specifier-p'.
  7710.  
  7711. arguments: (TYPE)
  7712. Fspecifierp
  7713. Return non-nil if OBJECT is a specifier.
  7714.  
  7715. A specifier is an object that can be used to keep track of a property
  7716. whose value can be per-buffer, per-window, per-frame, or per-device,
  7717. and can further be restricted to a particular device-type or device-class.
  7718. See `make-specifier'.
  7719.  
  7720. arguments: (OBJECT)
  7721. Fspecifier-type
  7722. Return the type of SPECIFIER.
  7723.  
  7724. arguments: (SPECIFIER)
  7725. Fvalid-specifier-locale-p
  7726. Return non-nil if LOCALE is a valid specifier locale.
  7727. Valid locales are a device, a frame, a window, a buffer, and 'global.
  7728. (nil is not valid.)
  7729.  
  7730. arguments: (LOCALE)
  7731. Fvalid-specifier-domain-p
  7732. Return non-nil if DOMAIN is a valid specifier domain.
  7733. A domain is used to instance a specifier (i.e. determine the specifier's
  7734. value in that domain).  Valid domains are a window, frame, or device.
  7735. (nil is not valid.)
  7736.  
  7737. arguments: (DOMAIN)
  7738. Fvalid-specifier-locale-type-p
  7739. Given a specifier LOCALE-TYPE, return non-nil if it is valid.
  7740. Valid locale types are 'global, 'device, 'frame, 'window, and 'buffer.
  7741. (Note, however, that in functions that accept either a locale or a locale
  7742. type, 'global is considered an individual locale.)
  7743.  
  7744. arguments: (LOCALE-TYPE)
  7745. Fspecifier-locale-type-from-locale
  7746. Given a specifier LOCALE, return its type.
  7747.  
  7748. arguments: (LOCALE)
  7749. Fvalid-specifier-tag-p
  7750. Return non-nil if TAG is a valid specifier tag.
  7751. See also `valid-specifier-tag-set-p'.
  7752.  
  7753. arguments: (TAG)
  7754. Fvalid-specifier-tag-set-p
  7755. Return non-nil if TAG-SET is a valid specifier tag set.
  7756.  
  7757. A specifier tag set is an entity that is attached to an instantiator
  7758. and can be used to restrict the scope of that instantiator to a
  7759. particular device class or device type and/or to mark instantiators
  7760. added by a particular package so that they can be later removed.
  7761.  
  7762. A specifier tag set consists of a list of zero of more specifier tags,
  7763. each of which is a symbol that is recognized by XEmacs as a tag.
  7764. (The valid device types and device classes are always tags, as are
  7765. any tags defined by `define-specifier-tag'.) It is called a "tag set"
  7766. (as opposed to a list) because the order of the tags or the number of
  7767. times a particular tag occurs does not matter.
  7768.  
  7769. Each tag has a predicate associated with it, which specifies whether
  7770. that tag applies to a particular device.  The tags which are device types
  7771. and classes match devices of that type or class.  User-defined tags can
  7772. have any predicate, or none (meaning that all devices match).  When
  7773. attempting to instance a specifier, a particular instantiator is only
  7774. considered if the device of the domain being instanced over matches
  7775. all tags in the tag set attached to that instantiator.
  7776.  
  7777. Most of the time, a tag set is not specified, and the instantiator
  7778. gets a null tag set, which matches all devices.
  7779.  
  7780. arguments: (TAG-SET)
  7781. Fcanonicalize-tag-set
  7782. Canonicalize the given tag set.
  7783. Two canonicalized tag sets can be compared with `equal' to see if they
  7784. represent the same tag set. (Specifically, canonicalizing involves
  7785. sorting by symbol name and removing duplicates.)
  7786.  
  7787. arguments: (TAG-SET)
  7788. Fdevice-matches-specifier-tag-set-p
  7789. Return non-nil if DEVICE matches specifier tag set TAG-SET.
  7790. This means that DEVICE matches each tag in the tag set. (Every
  7791. tag recognized by XEmacs has a predicate associated with it that
  7792. specifies which devices match it.)
  7793.  
  7794. arguments: (DEVICE TAG-SET)
  7795. Fdefine-specifier-tag
  7796. Define a new specifier tag.
  7797. If PREDICATE is specified, it should be a function of one argument
  7798. (a device) that specifies whether the tag matches that particular
  7799. device.  If PREDICATE is omitted, the tag matches all devices.
  7800.  
  7801. You can redefine an existing user-defined specifier tag.  However,
  7802. you cannot redefine the built-in specifier tags (the device types
  7803. and classes) or the symbols nil, t, 'all, or 'global.
  7804.  
  7805. arguments: (TAG &optional PREDICATE)
  7806. Fdevice-matching-specifier-tag-list
  7807. Return a list of all specifier tags matching DEVICE.
  7808. DEVICE defaults to the selected device if omitted.
  7809.  
  7810. arguments: (&optional DEVICE)
  7811. Fspecifier-tag-list
  7812. Return a list of all currently-defined specifier tags.
  7813. This includes the built-in ones (the device types and classes).
  7814.  
  7815. arguments: ()
  7816. Fspecifier-tag-predicate
  7817. Return the predicate for the given specifier tag.
  7818.  
  7819. arguments: (TAG)
  7820. Fcheck-valid-instantiator
  7821. Signal an error if INSTANTIATOR is invalid for SPECIFIER-TYPE.
  7822.  
  7823. arguments: (INSTANTIATOR SPECIFIER-TYPE)
  7824. Fvalid-instantiator-p
  7825. Return non-nil if INSTANTIATOR is valid for SPECIFIER-TYPE.
  7826.  
  7827. arguments: (INSTANTIATOR SPECIFIER-TYPE)
  7828. Fcheck-valid-inst-list
  7829. Signal an error if INST-LIST is invalid for specifier type TYPE.
  7830.  
  7831. arguments: (INST-LIST TYPE)
  7832. Fvalid-inst-list-p
  7833. Return non-nil if INST-LIST is valid for specifier type TYPE.
  7834.  
  7835. arguments: (INST-LIST TYPE)
  7836. Fcheck-valid-spec-list
  7837. Signal an error if SPEC-LIST is invalid for specifier type TYPE.
  7838.  
  7839. arguments: (SPEC-LIST TYPE)
  7840. Fvalid-spec-list-p
  7841. Return non-nil if SPEC-LIST is valid for specifier type TYPE.
  7842.  
  7843. arguments: (SPEC-LIST TYPE)
  7844. Fadd-spec-to-specifier
  7845. Add a specification to SPECIFIER.
  7846. The specification maps from LOCALE (which should be a buffer, window,
  7847. frame, device, or 'global, and defaults to 'global) to INSTANTIATOR,
  7848. whose allowed values depend on the type of the specifier.  Optional
  7849. argument TAG-SET limits the instantiator to apply only to the specified
  7850. tag set, which should be a list of tags all of which must match the
  7851. device being instantiated over (tags are a device type, a device class,
  7852. or tags defined with `define-specifier-tag').  Specifying a single
  7853. symbol for TAG-SET is equivalent to specifying a one-element list
  7854. containing that symbol.  Optional argument HOW-TO-ADD specifies what to
  7855. do if there are already specifications in the specifier.
  7856. It should be one of
  7857.  
  7858.   'prepend        Put at the beginning of the current list of
  7859.             instantiators for LOCALE.
  7860.   'append        Add to the end of the current list of
  7861.             instantiators for LOCALE.
  7862.   'remove-tag-set-prepend (this is the default)
  7863.             Remove any existing instantiators whose tag set is
  7864.             the same as TAG-SET; then put the new instantiator
  7865.             at the beginning of the current list. ("Same tag
  7866.             set" means that they contain the same elements.
  7867.             The order may be different.)
  7868.   'remove-tag-set-append
  7869.             Remove any existing instantiators whose tag set is
  7870.             the same as TAG-SET; then put the new instantiator
  7871.             at the end of the current list.
  7872.   'remove-locale    Remove all previous instantiators for this locale
  7873.             before adding the new spec.
  7874.   'remove-locale-type    Remove all specifications for all locales of the
  7875.             same type as LOCALE (this includes LOCALE itself)
  7876.             before adding the new spec.
  7877.   'remove-all        Remove all specifications from the specifier
  7878.             before adding the new spec.
  7879.  
  7880. You can retrieve the specifications for a particular locale or locale type
  7881. with the function `specifier-spec-list' or `specifier-specs'.
  7882.  
  7883. arguments: (SPECIFIER INSTANTIATOR &optional LOCALE TAG-SET HOW-TO-ADD)
  7884. Fadd-spec-list-to-specifier
  7885. Add a spec-list (a list of specifications) to SPECIFIER.
  7886. The format of a spec-list is
  7887.  
  7888.   ((LOCALE (TAG-SET . INSTANTIATOR) ...) ...)
  7889.  
  7890. where
  7891.   LOCALE := a buffer, a window, a frame, a device, or 'global
  7892.   TAG-SET := an unordered list of zero or more TAGS, each of which
  7893.              is a symbol
  7894.   TAG := a device class (see `valid-device-class-p'), a device type
  7895.          (see `valid-device-type-p'), or a tag defined with
  7896.          `define-specifier-tag'
  7897.   INSTANTIATOR := format determined by the type of specifier
  7898.  
  7899. The pair (TAG-SET . INSTANTIATOR) is called an `inst-pair'.
  7900. A list of inst-pairs is called an `inst-list'.
  7901. The pair (LOCALE . INST-LIST) is called a `specification' or `spec'.
  7902. A spec-list, then, can be viewed as a list of specifications.
  7903.  
  7904. HOW-TO-ADD specifies how to combine the new specifications with
  7905. the existing ones, and has the same semantics as for
  7906. `add-spec-to-specifier'.
  7907.  
  7908. In many circumstances, the higher-level function `set-specifier' is
  7909. more convenient and should be used instead.
  7910.  
  7911. arguments: (SPECIFIER SPEC-LIST &optional HOW-TO-ADD)
  7912. Fspecifier-spec-list
  7913. Return the spec-list of specifications for SPECIFIER in LOCALE.
  7914.  
  7915. If LOCALE is a particular locale (a buffer, window, frame, device,
  7916. or 'global), a spec-list consisting of the specification for that
  7917. locale will be returned.
  7918.  
  7919. If LOCALE is a locale type (i.e. 'buffer, 'window, 'frame, or 'device),
  7920. a spec-list of the specifications for all locales of that type will be
  7921. returned.
  7922.  
  7923. If LOCALE is nil or 'all, a spec-list of all specifications in SPECIFIER
  7924. will be returned.
  7925.  
  7926. LOCALE can also be a list of locales, locale types, and/or 'all; the
  7927. result is as if `specifier-spec-list' were called on each element of the
  7928. list and the results concatenated together.
  7929.  
  7930. Only instantiators where TAG-SET (a list of zero or more tags) is a
  7931. subset of (or possibly equal to) the instantiator's tag set are returned.
  7932. (The default value of nil is a subset of all tag sets, so in this case
  7933. no instantiators will be screened out.) If EXACT-P is non-nil, however,
  7934. TAG-SET must be equal to an instantiator's tag set for the instantiator
  7935. to be returned.
  7936.  
  7937. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P)
  7938. Fspecifier-specs
  7939. Return the specification(s) for SPECIFIER in LOCALE.
  7940.  
  7941. If LOCALE is a single locale or is a list of one element containing a
  7942. single locale, then a "short form" of the instantiators for that locale
  7943. will be returned.  Otherwise, this function is identical to
  7944. `specifier-spec-list'.
  7945.  
  7946. The "short form" is designed for readability and not for ease of use
  7947. in Lisp programs, and is as follows:
  7948.  
  7949. 1. If there is only one instantiator, then an inst-pair (i.e. cons of
  7950.    tag and instantiator) will be returned; otherwise a list of
  7951.    inst-pairs will be returned.
  7952. 2. For each inst-pair returned, if the instantiator's tag is 'any,
  7953.    the tag will be removed and the instantiator itself will be returned
  7954.    instead of the inst-pair.
  7955. 3. If there is only one instantiator, its value is nil, and its tag is
  7956.    'any, a one-element list containing nil will be returned rather
  7957.    than just nil, to distinguish this case from there being no
  7958.    instantiators at all.
  7959.  
  7960. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P)
  7961. Fremove-specifier
  7962. Remove specification(s) for SPECIFIER.
  7963.  
  7964. If LOCALE is a particular locale (a buffer, window, frame, device,
  7965. or 'global), the specification for that locale will be removed.
  7966.  
  7967. If instead, LOCALE is a locale type (i.e. 'buffer, 'window, 'frame,
  7968. or 'device), the specifications for all locales of that type will be
  7969. removed.
  7970.  
  7971. If LOCALE is nil or 'all, all specifications will be removed.
  7972.  
  7973. LOCALE can also be a list of locales, locale types, and/or 'all; this
  7974. is equivalent to calling `remove-specifier' for each of the elements
  7975. in the list.
  7976.  
  7977. Only instantiators where TAG-SET (a list of zero or more tags) is a
  7978. subset of (or possibly equal to) the instantiator's tag set are removed.
  7979. (The default value of nil is a subset of all tag sets, so in this case
  7980. no instantiators will be screened out.) If EXACT-P is non-nil, however,
  7981. TAG-SET must be equal to an instantiator's tag set for the instantiator
  7982. to be removed.
  7983.  
  7984. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P)
  7985. Fcopy-specifier
  7986. Copy SPECIFIER to DEST, or create a new one if DEST is nil.
  7987.  
  7988. If DEST is nil or omitted, a new specifier will be created and the
  7989. specifications copied into it.  Otherwise, the specifications will be
  7990. copied into the existing specifier in DEST.
  7991.  
  7992. If LOCALE is nil or 'all, all specifications will be copied.  If LOCALE
  7993. is a particular locale, the specification for that particular locale will
  7994. be copied.  If LOCALE is a locale type, the specifications for all locales
  7995. of that type will be copied.  LOCALE can also be a list of locales,
  7996. locale types, and/or 'all; this is equivalent to calling `copy-specifier'
  7997. for each of the elements of the list.  See `specifier-spec-list' for more
  7998. information about LOCALE.
  7999.  
  8000. Only instantiators where TAG-SET (a list of zero or more tags) is a
  8001. subset of (or possibly equal to) the instantiator's tag set are copied.
  8002. (The default value of nil is a subset of all tag sets, so in this case
  8003. no instantiators will be screened out.) If EXACT-P is non-nil, however,
  8004. TAG-SET must be equal to an instantiator's tag set for the instantiator
  8005. to be copied.
  8006.  
  8007. Optional argument HOW-TO-ADD specifies what to do with existing
  8008. specifications in DEST.  If nil, then whichever locales or locale types
  8009. are copied will first be completely erased in DEST.  Otherwise, it is
  8010. the same as in `add-spec-to-specifier'.
  8011.  
  8012. arguments: (SPECIFIER &optional DEST LOCALE TAG-SET EXACT-P HOW-TO-ADD)
  8013. Fspecifier-fallback
  8014. Return the fallback value for SPECIFIER.
  8015. Fallback values are provided by the C code for certain built-in
  8016. specifiers to make sure that instancing won't fail even if all
  8017. specs are removed from the specifier, or to implement simple
  8018. inheritance behavior (e.g. this method is used to ensure that
  8019. faces other than 'default inherit their attributes from 'default).
  8020. By design, you cannot change the fallback value, and specifiers
  8021. created with `make-specifier' will never have a fallback (although
  8022. a similar, Lisp-accessible capability may be provided in the future
  8023. to allow for inheritance).
  8024.  
  8025. The fallback value will be an inst-list that is instanced like
  8026. any other inst-list, a specifier of the same type as SPECIFIER
  8027. (results in inheritance), or nil for no fallback.
  8028.  
  8029. When you instance a specifier, you can explicitly request that the
  8030. fallback not be consulted. (The C code does this, for example, when
  8031. merging faces.) See `specifier-instance'.
  8032.  
  8033. arguments: (SPECIFIER)
  8034. Fspecifier-instance
  8035. Instantiate SPECIFIER (return its value) in DOMAIN.
  8036. If no instance can be generated for this domain, return DEFAULT.
  8037.  
  8038. DOMAIN should be a window, frame, or device.  Other values that are legal
  8039. as a locale (e.g. a buffer) are not valid as a domain because they do not
  8040. provide enough information to identify a particular device (see
  8041. `valid-specifier-domain-p').  DOMAIN defaults to the selected window
  8042. if omitted.
  8043.  
  8044. "Instantiating" a specifier in a particular domain means determining
  8045. the specifier's "value" in that domain.  This is accomplished by
  8046. searching through the specifications in the specifier that correspond
  8047. to all locales that can be derived from the given domain, from specific
  8048. to general.  In most cases, the domain is an Emacs window.  In that case
  8049. specifications are searched for as follows:
  8050.  
  8051. 1. A specification whose locale is the window's buffer;
  8052. 2. A specification whose locale is the window itself;
  8053. 3. A specification whose locale is the window's frame;
  8054. 4. A specification whose locale is the window's frame's device;
  8055. 5. A specification whose locale is 'global.
  8056.  
  8057. If all of those fail, then the C-code-provided fallback value for
  8058. this specifier is consulted (see `specifier-fallback').  If it is
  8059. an inst-list, then this function attempts to instantiate that list
  8060. just as when a specification is located in the first five steps above.
  8061. If the fallback is a specifier, `specifier-instance' is called
  8062. recursively on this specifier and the return value used.  Note,
  8063. however, that if the optional argument NO-FALLBACK is non-nil,
  8064. the fallback value will not be consulted.
  8065.  
  8066. Note that there may be more than one specification matching a particular
  8067. locale; all such specifications are considered before looking for any
  8068. specifications for more general locales.  Any particular specification
  8069. that is found may be rejected because its tag set does not match the
  8070. device being instantiated over, or because the specification is not
  8071. valid for the device of the given domain (e.g. the font or color name
  8072. does not exist for this particular X server).
  8073.  
  8074. The returned value is dependent on the type of specifier.  For example,
  8075. for a font specifier (as returned by the `face-font' function), the returned
  8076. value will be a font-instance object.  For glyphs, the returned value
  8077. will be a string, pixmap, or subwindow.
  8078.  
  8079. arguments: (SPECIFIER &optional DOMAIN DEFAULT NO-FALLBACK)
  8080. Fspecifier-instance-from-inst-list
  8081. Attempt to convert a particular inst-list into an instance.
  8082. This attempts to instantiate INST-LIST in the given DOMAIN,
  8083. as if INST-LIST existed in a specification in SPECIFIER.  If
  8084. the instantiation fails, DEFAULT is returned.  In most circumstances,
  8085. you should not use this function; use `specifier-instance' instead.
  8086.  
  8087. arguments: (SPECIFIER DOMAIN INST-LIST &optional DEFAULT)
  8088. Fgeneric-specifier-p
  8089. Return non-nil if OBJECT is a generic specifier.
  8090.  
  8091. A generic specifier allows any kind of Lisp object as an instantiator,
  8092. and returns back the Lisp object unchanged when it is instantiated.
  8093.  
  8094. arguments: (OBJECT)
  8095. Finteger-specifier-p
  8096. Return non-nil if OBJECT is an integer specifier.
  8097.  
  8098. arguments: (OBJECT)
  8099. Fnatnum-specifier-p
  8100. Return non-nil if OBJECT is a natnum (non-negative-integer) specifier.
  8101.  
  8102. arguments: (OBJECT)
  8103. Fboolean-specifier-p
  8104. Return non-nil if OBJECT is an boolean specifier.
  8105.  
  8106. arguments: (OBJECT)
  8107. Fvalid-image-instantiator-type-p
  8108. Given an IMAGE-INSTANTIATOR-TYPE, return non-nil if it is valid.
  8109. Valid types are some subset of 'nothing, 'string, 'formatted-string, 'xpm,
  8110. 'xbm, 'xface, 'gif, 'jpeg, 'png, 'autodetect, and 'subwindow, depending
  8111. on how XEmacs was compiled.
  8112.  
  8113. arguments: (IMAGE-INSTANTIATOR-TYPE)
  8114. Fimage-instantiator-type-list
  8115. Return a list of valid image-instantiator types.
  8116.  
  8117. arguments: ()
  8118. Fset-device-type-image-conversion-list
  8119. Set the image-conversion-list for devices of the given TYPE.
  8120. The image-conversion-list specifies how image instantiators that
  8121. are strings should be interpreted.  Each element of the list should be
  8122. a list of two elements (a regular expression string and a vector) or
  8123. a list of three elements (the preceding two plus an integer index into
  8124. the vector).  The string is converted to the vector associated with the
  8125. first matching regular expression.  If a vector index is specified, the
  8126. string itself is substituted into that position in the vector.
  8127.  
  8128. Note: The conversion above is applied when the image instantiator is
  8129. added to an image specifier, not when the specifier is actually
  8130. instantiated.  Therefore, changing the image-conversion-list only affects
  8131. newly-added instantiators.  Existing instantiators in glyphs and image
  8132. specifiers will not be affected.
  8133.  
  8134. arguments: (DEVICE-TYPE LIST)
  8135. Fdevice-type-image-conversion-list
  8136. Return the image-conversion-list for devices of the given TYPE.
  8137. The image-conversion-list specifies how to interpret image string
  8138. instantiators for the specified device type.  See
  8139. `set-device-type-image-conversion-list' for a description of its syntax.
  8140.  
  8141. arguments: (DEVICE-TYPE)
  8142. Fvalid-image-instance-type-p
  8143. Given an IMAGE-INSTANCE-TYPE, return non-nil if it is valid.
  8144. Valid types are some subset of 'nothing, 'text, 'mono-pixmap, 'color-pixmap,
  8145. 'cursor, and 'subwindow, depending on how XEmacs was compiled.
  8146.  
  8147. arguments: (IMAGE-INSTANCE-TYPE)
  8148. Fimage-instance-type-list
  8149. Return a list of valid image-instance types.
  8150.  
  8151. arguments: ()
  8152. Fmake-image-instance
  8153. Create a new `image-instance' object.
  8154.  
  8155. Image-instance objects encapsulate the way a particular image (pixmap,
  8156. etc.) is displayed on a particular device.  In most circumstances, you
  8157. do not need to directly create image instances; use a glyph or an image-
  8158. specifier instead. (Most functions and data structures that want an image
  8159. are designed to take either a glyph or an image-specifier.)
  8160.  
  8161. DATA is an image instantiator; see `image-specifier-p' for a description
  8162. of the allowed values.
  8163.  
  8164. arguments: (DATA &optional DEVICE DEST-TYPES NO-ERROR)
  8165. Fimage-instance-p
  8166. Return non-nil if OBJECT is an image instance.
  8167.  
  8168. arguments: (OBJECT)
  8169. Fimage-instance-type
  8170. Return the type of the given image instance.
  8171. The return value will be one of 'nothing, 'text, 'mono-pixmap,
  8172. 'color-pixmap, 'cursor, or 'subwindow.
  8173.  
  8174. arguments: (IMAGE-INSTANCE)
  8175. Fimage-instance-name
  8176. Return the name of the given image instance.
  8177.  
  8178. arguments: (IMAGE-INSTANCE)
  8179. Fimage-instance-string
  8180. Return the string of the given image instance.
  8181.  
  8182. arguments: (IMAGE-INSTANCE)
  8183. Fimage-instance-file-name
  8184. Return the file name from which IMAGE-INSTANCE was read, if known.
  8185.  
  8186. arguments: (IMAGE-INSTANCE)
  8187. Fimage-instance-mask-file-name
  8188. Return the file name from which IMAGE-INSTANCE's mask was read, if known.
  8189.  
  8190. arguments: (IMAGE-INSTANCE)
  8191. Fimage-instance-depth
  8192. Return the depth of the image instance.
  8193. This is 0 for a bitmap, or a positive integer for a pixmap.
  8194.  
  8195. arguments: (IMAGE-INSTANCE)
  8196. Fimage-instance-height
  8197. Return the height of the image instance, in pixels.
  8198.  
  8199. arguments: (IMAGE-INSTANCE)
  8200. Fimage-instance-width
  8201. Return the width of the image instance, in pixels.
  8202.  
  8203. arguments: (IMAGE-INSTANCE)
  8204. Fset-image-instance-hotspot
  8205. Set the image instance's hotspot.
  8206. This is a point relative to the origin of the pixmap.  When a pixmap is
  8207. used as a cursor or similar pointing indicator, the hotspot is the point
  8208. on the pixmap that sits over the location that the pointer points to.
  8209. This is, for example, the tip of the arrow or the center of the crosshairs.
  8210.  
  8211. arguments: (IMAGE-INSTANCE X Y)
  8212. Fimage-instance-hotspot-x
  8213. Return the X coordinate of the image instance's hotspot.
  8214. See `set-image-instance-hotspot'.
  8215.  
  8216. arguments: (IMAGE-INSTANCE)
  8217. Fimage-instance-hotspot-y
  8218. Return the Y coordinate of the image instance's hotspot.
  8219. See `set-image-instance-hotspot'.
  8220.  
  8221. arguments: (IMAGE-INSTANCE)
  8222. Fimage-specifier-p
  8223. Return non-nil if OBJECT is an image specifier.
  8224.  
  8225. An image specifier is used for images (pixmaps and the like).  It is used
  8226. to describe the actual image in a glyph.  It is instanced as an image-
  8227. instance.
  8228.  
  8229. An image instantiator should be a string or a vector of the form
  8230.  
  8231.  [TYPE :KEYWORD VALUE ...]
  8232.  
  8233. i.e. a type symbol followed by zero or more alternating keyword-value
  8234. pairs.  TYPE should be one of
  8235.  
  8236. 'nothing
  8237.   (Don't display anything; no keywords are valid for this.)
  8238. 'string
  8239.   (Display this image as a text string.)
  8240. 'formatted-string
  8241.   (Display this image as a text string, with replaceable fields;
  8242.   #### not implemented in 19.13.)
  8243. 'xbm
  8244.   (An X bitmap; only if X support was compiled into this XEmacs.)
  8245. 'xpm
  8246.   (An XPM pixmap; only if XPM support was compiled into this XEmacs.)
  8247. 'xface
  8248.   (An X-Face bitmap, used to encode people's faces in e-mail messages;
  8249.   only if X-Face support was compiled into this XEmacs.)
  8250. 'gif
  8251.   (A GIF87 or GIF89 image; only if GIF support was compiled into this
  8252.    XEmacs.)
  8253. 'jpeg
  8254.   (A JPEG image; only if JPEG support was compiled into this XEmacs.)
  8255. 'png
  8256.   (A PNG/GIF24 image; only if PNG support was compiled into this XEmacs.)
  8257. 'autodetect
  8258.   (XEmacs tries to guess what format the data is in.  If X support
  8259.   exists, the data string will be checked to see if it names a filename.
  8260.   If so, and this filename contains XBM or XPM data, the appropriate
  8261.   sort of pixmap will be created.  Otherwise, the image will be displayed
  8262.   as a string.  If no X support exists, the image will always be displayed
  8263.   as a string.)
  8264.  
  8265. The valid keywords are:
  8266.  
  8267. :data
  8268.   (Inline data.  For most formats above, this should be a string.  For
  8269.   XBM images, this should be a cons of three elements: width, height, and
  8270.   a string of bit data.)
  8271. :file
  8272.   (Data is contained in a file.  The value is the name of this file.
  8273.   If both :data and :file are specified, the image is created from
  8274.   what is specified in :data and the string in :file becomes the
  8275.   value of the `image-instance-file-name' function when applied to
  8276.   the resulting image-instance.)
  8277. :mask-data
  8278.   (Only for XBM images.  This specifies a mask to be used with the
  8279.   bitmap.  The format is a cons of width, height, and bits, like for
  8280.   :data.)
  8281. :mask-file
  8282.   (Only for XBM images.  This specifies a file containing the mask data.)
  8283. :color-symbols
  8284.   (Only for XPM images.  This specifies an alist that maps strings
  8285.   that specify symbolic color names to the actual color to be used
  8286.   for that symbolic color (in the form of a string or a color-specifier
  8287.   object).  If this is not specified, the contents of `xpm-color-symbols'
  8288.   are used to generate the alist.)
  8289.  
  8290. If instead of a vector, the instantiator is a string, it will be looked
  8291. up according to the specs in the `device-type-image-conversion-list' (q.v.)
  8292. for the device type of the domain over which the image is being
  8293. instantiated.
  8294.  
  8295. If the instantiator is a string, it will be read in at the time that the
  8296. instantiator is added to the image, and the instantiator will be converted
  8297. into one of the [FILENAME ...] forms.  This implies that the file must exist
  8298. when the instantiator is added to the image, but does not need to exist at
  8299. any other time (e.g. it may be a temporary file).
  8300.  
  8301. arguments: (OBJECT)
  8302. Fvalid-glyph-type-p
  8303. Given an GLYPH-TYPE, return non-nil if it is valid.
  8304. Valid types are some subset of 'nothing, 'text, 'mono-pixmap, 'color-pixmap,
  8305. 'cursor, and 'subwindow, depending on how XEmacs was compiled.
  8306.  
  8307. arguments: (GLYPH-TYPE)
  8308. Fglyph-type-list
  8309. Return a list of valid glyph types.
  8310.  
  8311. arguments: ()
  8312. Fmake-glyph-internal
  8313. Create a new, uninitialized glyph.
  8314.  
  8315. arguments: (&optional TYPE)
  8316. Fglyphp
  8317. Return non-nil if OBJECT is a glyph.
  8318.  
  8319. A glyph is an object used for pixmaps and the like.  It is used
  8320. in begin-glyphs and end-glyphs attached to extents, in marginal and textual
  8321. annotations, in overlay arrows (overlay-arrow-* variables), in toolbar
  8322. buttons, and the like.  Its image is described using an image specifier --
  8323. see `image-specifier-p'.
  8324.  
  8325. arguments: (OBJECT)
  8326. Fglyph-type
  8327. Return the type of the given glyph.
  8328. The return value will be one of 'buffer, 'cursor, or 'icon.
  8329.  
  8330. arguments: (GLYPH)
  8331. Fglyph-width
  8332. Return the width of GLYPH on WINDOW.
  8333. This may not be exact as it does not take into account all of the context
  8334. that redisplay will.
  8335.  
  8336. arguments: (GLYPH &optional WINDOW)
  8337. Fglyph-ascent
  8338. Return the ascent value of GLYPH on WINDOW.
  8339. This may not be exact as it does not take into account all of the context
  8340. that redisplay will.
  8341.  
  8342. arguments: (GLYPH &optional WINDOW)
  8343. Fglyph-descent
  8344. Return the descent value of GLYPH on WINDOW.
  8345. This may not be exact as it does not take into account all of the context
  8346. that redisplay will.
  8347.  
  8348. arguments: (GLYPH &optional WINDOW)
  8349. Fglyph-height
  8350. Return the height of GLYPH on WINDOW.
  8351. This may not be exact as it does not take into account all of the context
  8352. that redisplay will.
  8353.  
  8354. arguments: (GLYPH &optional WINDOW)
  8355. Voctal-escape-glyph
  8356. What to prefix character codes displayed in octal with.Vcontrol-arrow-glyph
  8357. What to use as an arrow for control characters.Vinvisible-text-glyph
  8358. What to use to indicate the presence of invisible text.Vhscroll-glyph
  8359. What to display at the beginning of horizontally scrolled lines.Vcurrent-display-table
  8360. *The display table currently in use.
  8361. This is a specifier; use `set-specifier' to change it.
  8362. The display table is a vector created with `make-display-table'.
  8363. The 256 elements control how to display each possible text character.
  8364. Each value should be a string, a glyph, a vector or nil.
  8365. If a value is a vector it must be composed only of strings and glyphs.
  8366. nil means display the character in the default fashion.
  8367. Faces can have their own, overriding display table.Vtruncation-glyph
  8368. What to display at the end of truncated lines.Vcontinuation-glyph
  8369. What to display at the end of wrapped lines.Vxemacs-logo
  8370. The glyph used to display the XEmacs logo at startup.Fmake-color-instance
  8371. Creates a new `color-instance' object of the specified color.
  8372. DEVICE specifies the device this object applies to and defaults to the
  8373. selected device.  An error is signalled if the color is unknown or cannot
  8374. be allocated; however, if NOERROR is non-nil, nil is simply returned in
  8375. this case.
  8376.  
  8377. The returned object is a normal, first-class lisp object.  The way you
  8378. `deallocate' the color is the way you deallocate any other lisp object:
  8379. you drop all pointers to it and allow it to be garbage collected.  When
  8380. these objects are GCed, the underlying window-system data (e.g. X object)
  8381. is deallocated as well.
  8382.  
  8383. arguments: (NAME &optional DEVICE NO-ERROR)
  8384. Fcolor-instance-p
  8385. Return non-nil if OBJECT is a color instance.
  8386.  
  8387. arguments: (OBJECT)
  8388. Fcolor-instance-name
  8389. Return the name used to allocate COLOR-INSTANCE.
  8390.  
  8391. arguments: (COLOR-INSTANCE)
  8392. Fcolor-instance-rgb-components
  8393. Return a three element list containing the red, green, and blue
  8394. color components of COLOR-INSTANCE, or nil if unknown.
  8395.  
  8396. arguments: (COLOR-INSTANCE)
  8397. Fvalid-color-name-p
  8398. Return true if COLOR names a valid color for the current device.
  8399.  
  8400. Valid color names for X are listed in the file /usr/lib/X11/rgb.txt, or
  8401. whatever the equivalent is on your system.
  8402.  
  8403. Valid color names for TTY are those which have an ISO 6429 (ANSI) sequence.
  8404. In addition to being a color this may be one of a number of attributes
  8405. such as `blink'.
  8406.  
  8407. arguments: (COLOR &optional DEVICE)
  8408. Fmake-font-instance
  8409. Creates a new `font-instance' object of the specified name.
  8410. DEVICE specifies the device this object applies to and defaults to the
  8411. selected device.  An error is signalled if the font is unknown or cannot
  8412. be allocated; however, if NOERROR is non-nil, nil is simply returned in
  8413. this case.
  8414.  
  8415. The returned object is a normal, first-class lisp object.  The way you
  8416. `deallocate' the font is the way you deallocate any other lisp object:
  8417. you drop all pointers to it and allow it to be garbage collected.  When
  8418. these objects are GCed, the underlying X data is deallocated as well.
  8419.  
  8420. arguments: (NAME &optional DEVICE NO-ERROR)
  8421. Ffont-instance-p
  8422. Return non-nil if OBJECT is a font instance.
  8423.  
  8424. arguments: (OBJECT)
  8425. Ffont-instance-name
  8426. Return the name used to allocate FONT-INSTANCE.
  8427.  
  8428. arguments: (FONT-INSTANCE)
  8429. Ffont-instance-truename
  8430. Return the canonical name of the given font instance.
  8431. Font names are patterns which may match any number of fonts, of which
  8432. the first found is used.  This returns an unambiguous name for that font
  8433. (but not necessarily its only unambiguous name).
  8434.  
  8435. arguments: (FONT-INSTANCE)
  8436. Ffont-instance-properties
  8437. Return the properties (an alist or nil) of FONT-INSTANCE.
  8438.  
  8439. arguments: (FONT-INSTANCE)
  8440. Flist-fonts
  8441. Return a list of font names matching the given pattern.
  8442. DEVICE specifies which device to search for names, and defaults to the
  8443. currently selected device.
  8444.  
  8445. arguments: (PATTERN &optional DEVICE)
  8446. Fcolor-specifier-p
  8447. Return non-nil if OBJECT is a color specifier.
  8448.  
  8449. arguments: (OBJECT)
  8450. Ffont-specifier-p
  8451. Return non-nil if OBJECT is a font specifier.
  8452.  
  8453. arguments: (OBJECT)
  8454. Fface-boolean-specifier-p
  8455. Return non-nil if OBJECT is a face-boolean specifier.
  8456.  
  8457. arguments: (OBJECT)
  8458. Fset-menubar-dirty-flag
  8459. Tell XEmacs that the menubar has to be updated.
  8460.  
  8461. arguments: ()
  8462. Vcurrent-menubar
  8463. The current menubar.  This may be buffer-local.
  8464.  
  8465. When the menubar is changed, the function `set-menubar-dirty-flag' has to
  8466. be called for the menubar to be updated on the frame.  See `set-menubar'
  8467. and `set-buffer-menubar'.
  8468.  
  8469. A menubar is a list of menus and menu-items.
  8470. A menu is a list of menu items, keyword-value pairs, strings, and submenus.
  8471.  
  8472. The first element of a menu must be a string, which is the name of the menu.
  8473. This is the string that will be displayed in the parent menu, if any.  For
  8474. toplevel menus, it is ignored.  This string is not displayed in the menu
  8475. itself.
  8476.  
  8477. Immediately following the name string of the menu, any of three
  8478. optional keyword-value pairs is permitted.
  8479.  
  8480. If an element of a menu (or menubar) is a string, then that string will be
  8481. presented as unselectable text.
  8482.  
  8483. If an element of a menu is a string consisting solely of hyphens, then that
  8484. item will be presented as a solid horizontal line.
  8485.  
  8486. If an element of a menu is a list, it is treated as a submenu.  The name of
  8487. that submenu (the first element in the list) will be used as the name of the
  8488. item representing this menu on the parent.
  8489.  
  8490. If an element of a menubar is `nil', then it is used to represent the
  8491. division between the set of menubar-items which are flushleft and those
  8492. which are flushright.
  8493.  
  8494. Otherwise, the element must be a vector, which describes a menu item.
  8495. A menu item can have any of the following forms:
  8496.  
  8497.  [ "name" callback <active-p> ]
  8498.  [ "name" callback <active-p> "suffix" ]
  8499.  [ "name" callback :<keyword> <value>  :<keyword> <value> ... ]
  8500.  
  8501. The name is the string to display on the menu; it is filtered through the
  8502. resource database, so it is possible for resources to override what string
  8503. is actually displayed.
  8504.  
  8505. If the `callback' of a menu item is a symbol, then it must name a command.
  8506. It will be invoked with `call-interactively'.  If it is a list, then it is
  8507. evaluated with `eval'.
  8508.  
  8509. The possible keywords are this:
  8510.  
  8511.  :active   <form>    Same as <active-p> in the first two forms: the
  8512.                      expression is evaluated just before the menu is
  8513.                      displayed, and the menu will be selectable only if
  8514.                      the result is non-nil.
  8515.  
  8516.  :suffix   "string"  Same as "suffix" in the second form: the suffix is
  8517.                      appended to the displayed name, providing a convenient
  8518.                      way of adding the name of a command's ``argument'' to
  8519.                      the menu, like ``Kill Buffer NAME''.
  8520.  
  8521.  :keys     "string"  Normally, the keyboard equivalents of commands in
  8522.                      menus are displayed when the `callback' is a symbol.
  8523.                      This can be used to specify keys for more complex menu
  8524.                      items.  It is passed through `substitute-command-keys'
  8525.                      first.
  8526.  
  8527.  :style    <style>   Specifies what kind of object this menu item is:
  8528.  
  8529.                         nil     A normal menu item.
  8530.                         toggle  A toggle button.
  8531.                         radio   A radio button.
  8532.                         button  A menubar button.
  8533.  
  8534.                      The only difference between toggle and radio buttons is
  8535.                      how they are displayed.  But for consistency, a toggle
  8536.                      button should be used when there is one option whose
  8537.                      value can be turned on or off, and radio buttons should
  8538.                      be used when there is a set of mutally exclusive
  8539.                      options.  When using a group of radio buttons, you
  8540.                      should arrange for no more than one to be marked as
  8541.                      selected at a time.
  8542.  
  8543.  :selected <form>    Meaningful only when STYLE is `toggle', `radio' or
  8544.                      `button'.  This specifies whether the button will be in
  8545.              the selected or unselected state.
  8546.  
  8547.  :included <form>    This can be used to control the visibility of a menu or
  8548.              menu item.  The form is evaluated and the menu or menu
  8549.              item is only displayed if the result is non-nil.
  8550.  
  8551.  :config  <symbol>   This is an efficient shorthand for
  8552.                  :included (memq symbol menubar-configuration)
  8553.                  See the variable `menubar-configuration'.
  8554.  
  8555.  :filter <function>  A menu filter can only be used in a menu item list.
  8556.              (i.e.:  not in a menu item itself).  It is used to
  8557.              sensitize or incrementally create a submenu only when
  8558.              it is selected by the user and not every time the
  8559.              menubar is activated.  The filter function is passed
  8560.              the list of menu items in the submenu and must return a
  8561.              list of menu items to be used for the menu.  It is
  8562.              called only when the menu is about to be displayed, so
  8563.              other menus may already be displayed.  Vile and
  8564.              terrible things will happen if a menu filter function
  8565.              changes the current buffer, window, or frame.  It
  8566.              also should not raise, lower, or iconify any frames.
  8567.              Basically, the filter function should have no
  8568.              side-effects.
  8569.  
  8570. For example:
  8571.  
  8572.  ("File"
  8573.   :filter file-menu-filter    ; file-menu-filter is a function that takes
  8574.                 ; one argument (a list of menu items) and
  8575.                 ; returns a list of menu items
  8576.   [ "Save As..."    write-file  t ]
  8577.   [ "Revert Buffer" revert-buffer (buffer-modified-p) ]
  8578.   [ "Read Only"     toggle-read-only :style toggle
  8579.               :selected buffer-read-only ]
  8580.   )
  8581.  
  8582. See x-menubar.el for many more examples.
  8583.  
  8584. After the menubar is clicked upon, but before any menus are popped up,
  8585. the functions on the `activate-menubar-hook' are invoked to make top-level
  8586. changes to the menus and menubar.  Note, however, that the use of menu
  8587. filters (using the :filter keyword) is usually a more efficient way to
  8588. dynamically alter or sensitize menus.Vactivate-menubar-hook
  8589. Function or functions called before a menubar menu is pulled down.
  8590. These functions are called with no arguments, and should interrogate and
  8591. modify the value of `current-menubar' as desired.
  8592.  
  8593. The functions on this hook are invoked after the mouse goes down, but before
  8594. the menu is mapped, and may be used to activate, deactivate, add, or delete
  8595. items from the menus.  However, it is probably the case that using a :filter
  8596. keyword in a submenu would be a more efficient way of updating menus.  See
  8597. the documentation of `current-menubar'.
  8598.  
  8599. These functions may return the symbol `t' to assert that they have made
  8600. no changes to the menubar.  If any other value is returned, the menubar is
  8601. recomputed.  If `t' is returned but the menubar has been changed, then the
  8602. changes may not show up right away.  Returning `nil' when the menubar has
  8603. not changed is not so bad; more computation will be done, but redisplay of
  8604. the menubar will still be performed optimally.Vmenu-no-selection-hook
  8605. Function or functions to call when a menu or dialog box is dismissed
  8606. without a selection having been made.Vmenubar-show-keybindings
  8607. If true, the menubar will display keyboard equivalents.
  8608. If false, only the command names will be displayed.Vmenubar-configuration
  8609. A list of symbols, against which the value of the :config tag for each
  8610. menubar item will be compared.  If a menubar item has a :config tag, then
  8611. it is omitted from the menubar if that tag is not a member of the
  8612. `menubar-configuration' list.Vmenubar-visible-p
  8613. *Whether the menubar is visible.
  8614. This is a specifier; use `set-specifier' to change it.Fscrollbar-line-up
  8615. Function called when the line-up arrow on the scrollbar is clicked.
  8616. This is the little arrow at the top of the scrollbar.  One argument, the
  8617. scrollbar's window.  You can advise this function to change the scrollbar
  8618. behavior.
  8619.  
  8620. arguments: (WINDOW)
  8621. Fscrollbar-line-down
  8622. Function called when the line-down arrow on the scrollbar is clicked.
  8623. This is the little arrow at the bottom of the scrollbar.  One argument, the
  8624. scrollbar's window.  You can advise this function to change the scrollbar
  8625. behavior.
  8626.  
  8627. arguments: (WINDOW)
  8628. Fscrollbar-page-up
  8629. Function called when the user gives the "page-up" scrollbar action.
  8630. (The way this is done can vary from scrollbar to scrollbar.) One argument,
  8631. a cons containing the scrollbar's window and a value (#### document me!
  8632. This value is nil for Motif/Lucid scrollbars and a number for Athena
  8633. scrollbars).  You can advise this function to change the scrollbar
  8634. behavior.
  8635.  
  8636. arguments: (OBJECT)
  8637. Fscrollbar-page-down
  8638. Function called when the user gives the "page-down" scrollbar action.
  8639. (The way this is done can vary from scrollbar to scrollbar.) One argument,
  8640. a cons containing the scrollbar's window and a value (#### document me!
  8641. This value is nil for Motif/Lucid scrollbars and a number for Athena
  8642. scrollbars).  You can advise this function to change the scrollbar
  8643. behavior.
  8644.  
  8645. arguments: (OBJECT)
  8646. Fscrollbar-to-top
  8647. Function called when the user gives the "to-top" scrollbar action.
  8648. (The way this is done can vary from scrollbar to scrollbar.). One argument,
  8649. the scrollbar's window.  You can advise this function to change the
  8650. scrollbar behavior.
  8651.  
  8652. arguments: (WINDOW)
  8653. Fscrollbar-to-bottom
  8654. Function called when the user gives the "to-bottom" scrollbar action.
  8655. (The way this is done can vary from scrollbar to scrollbar.). One argument,
  8656. the scrollbar's window.  You can advise this function to change the
  8657. scrollbar behavior.
  8658.  
  8659. arguments: (WINDOW)
  8660. Fscrollbar-vertical-drag
  8661. Function called when the user drags the vertical scrollbar thumb.
  8662. One argument, a cons containing the scrollbar's window and a value
  8663. (#### document me!).  You can advise this function to change the
  8664. scrollbar behavior.
  8665.  
  8666. arguments: (OBJECT)
  8667. Fscrollbar-set-hscroll
  8668. Sets WINDOW's hscroll position to VALUE.
  8669. This ensures that VALUE is in the proper range for the horizontal scrollbar.
  8670.  
  8671. arguments: (WINDOW VALUE)
  8672. Vscrollbar-width
  8673. *Width of vertical scrollbars.
  8674. This is a specifier; use `set-specifier' to change it.Vscrollbar-height
  8675. *Width of vertical scrollbars.
  8676. This is a specifier; use `set-specifier' to change it.Ftoolbar-button-p
  8677. Return non-nil if OBJECT is a toolbar button.
  8678.  
  8679. arguments: (OBJECT)
  8680. Ftoolbar-button-callback
  8681. Return the callback function associated with the toolbar BUTTON.
  8682.  
  8683. arguments: (BUTTON)
  8684. Ftoolbar-button-help-string
  8685. Return the help string function associated with the toolbar BUTTON.
  8686.  
  8687. arguments: (BUTTON)
  8688. Ftoolbar-button-enabled-p
  8689. Return t if BUTTON is active.
  8690.  
  8691. arguments: (BUTTON)
  8692. Fset-toolbar-button-down-flag
  8693. Don't touch.
  8694.  
  8695. arguments: (BUTTON FLAG)
  8696. Fset-default-toolbar-position
  8697. Set the position that the `default-toolbar' will be displayed at.
  8698. Valid positions are 'top, 'bottom, 'left and 'right.
  8699. See `default-toolbar-position'.
  8700.  
  8701. arguments: (POSITION)
  8702. Fdefault-toolbar-position
  8703. Return the position that the `default-toolbar' will be displayed at.
  8704. The `default-toolbar' will only be displayed here if the corresponding
  8705. position-specific toolbar specifier does not provide a value.
  8706.  
  8707. arguments: ()
  8708. Fcheck-toolbar-button-syntax
  8709. Verify the syntax of entry BUTTON in a toolbar description list.
  8710. If you want to verify the syntax of a toolbar description list as a
  8711. whole, use `check-valid-instantiator' with a specifier type of 'toolbar.
  8712.  
  8713. arguments: (BUTTON &optional NO-ERROR)
  8714. Ftoolbar-specifier-p
  8715. Return non-nil if OBJECT is an toolbar specifier.
  8716. Toolbar specifiers are used to specify the format of a toolbar.
  8717. The values of the variables `default-toolbar', `top-toolbar',
  8718. `left-toolbar', `right-toolbar', and `bottom-toolbar' are always
  8719. toolbar specifiers.  See `default-toolbar' for a description
  8720. of a valid toolbar instantiator.
  8721.  
  8722. arguments: (OBJECT)
  8723. Vdefault-toolbar
  8724. Specifier for a fallback toolbar.
  8725. Use `set-specifier' to change this.
  8726.  
  8727. The position of this toolbar is specified in the function
  8728. `default-toolbar-position'.  If the corresponding position-
  8729. specific toolbar (e.g. `top-toolbar' if `default-toolbar-position'
  8730. is 'top) does not specify a toolbar in a particular domain,
  8731. then the value of `default-toolbar' in that domain, if any,
  8732. will be used instead.
  8733.  
  8734. Note that the toolbar at any particular position will not be
  8735. displayed unless its thickness (width or height, depending on
  8736. orientation) is non-zero.  The thickness is controlled by the
  8737. variables `top-toolbar-height', `bottom-toolbar-height',
  8738. `left-toolbar-width', and `right-toolbar-width'.  By default,
  8739. only `top-toolbar-height' has a non-zero value.
  8740.  
  8741. The format of the instantiator for a toolbar is a list of
  8742. toolbar-button-descriptors.  Each toolbar-button-descriptor
  8743. is a vector in one of the following formats:
  8744.  
  8745.   [GLYPH-LIST FUNCTION ENABLED-P HELP] or
  8746.   [:style 2D-OR-3D] or
  8747.   [:style 2D-OR-3D :size WIDTH-OR-HEIGHT] or
  8748.   [:size WIDTH-OR-HEIGHT :style 2D-OR-3D]
  8749.  
  8750. Optionally, one of the toolbar-button-descriptors may be nil
  8751. instead of a vector; this signifies the division between
  8752. the toolbar buttons that are to be displayed flush-left,
  8753. and the buttons to be displayed flush-right.
  8754.  
  8755. The first vector format above specifies a normal toolbar button;
  8756. the others specify blank areas in the toolbar.
  8757.  
  8758. For the first vector format:
  8759.  
  8760. -- GLYPH-LIST should be a list of one to six glyphs (as created by
  8761.    `make-glyph') or a symbol whose value is such a list.  The first
  8762.    glyph, which must be provided, is the glyph used to display the
  8763.    toolbar button when it is in the "up" (not pressed) state.  The
  8764.    optional second glyph is for displaying the button when it is in
  8765.    the "down" (pressed) state.  The optional third glyph is for when
  8766.    the button is disabled.  The optional fourth, fifth and sixth glyphs
  8767.    are used to specify captioned versions for the up, down and disabled
  8768.    states respectively.  The function `toolbar-make-button-list' is
  8769.    useful in creating these glyph lists.  The specifier variable
  8770.    `toolbar-use-captions' controls whic glyphs are actually used.
  8771.  
  8772.    Even if you do not provide separate down-state and disabled-state
  8773.    glyphs, the user will still get visual feedback to indicate which
  8774.    state the button is in.  Buttons in the up-state are displayed
  8775.    with a shadowed border that gives a raised appearance to the
  8776.    button.  Buttons in the down-state are displayed with shadows that
  8777.    give a recessed appearance.  Buttons in the disabled state and
  8778.    displayed with no shadows, giving a 2-d effect.
  8779.  
  8780. -- The second element FUNCTION is a function to be called when the
  8781.    toolbar button is activated (i.e. when the mouse is released over
  8782.    the toolbar button, if the press occurred in the toolbar).  It
  8783.    can be any form accepted by `call-interactively', since this is
  8784.    how it is invoked.
  8785.  
  8786. -- The third element ENABLED-P specifies whether the toolbar button
  8787.    is enabled (disabled buttons do nothing when they are activated,
  8788.    and are displayed differently; see above).  It should be either
  8789.    a boolean or a form that evaluates to a boolean.
  8790.  
  8791. -- The fourth element HELP, if non-nil, should be a string.  This
  8792.    string is displayed in the echo area when the mouse passes over
  8793.    the toolbar button.
  8794.  
  8795. For the other vector formats (specifying blank areas of the toolbar):
  8796.  
  8797. -- 2D-OR-3D should be one of the symbols '2d or '3d, indicating
  8798.    whether the area is displayed with shadows (giving it a raised,
  8799.    3-d appearance) or without shadows (giving it a flat appearance).
  8800.  
  8801. -- WIDTH-OR-HEIGHT specifies the length, in pixels, of the blank
  8802.    area.  If omitted, it defaults to a device-specific value
  8803.    (8 pixels for X devices).Vtop-toolbar
  8804. Specifier for toolbar at the top of the frame.
  8805. Use `set-specifier' to change this.
  8806. See `default-toolbar' for a description of a valid toolbar instantiator.Vbottom-toolbar
  8807. Specifier for toolbar at the bottom of the frame.
  8808. Use `set-specifier' to change this.
  8809. See `default-toolbar' for a description of a valid toolbar instantiator.
  8810.  
  8811. Note that by default the height of the bottom toolbar (controlled by
  8812. `bottom-toolbar-height') is 0; thus, a bottom toolbar will not be
  8813. displayed even if you provide a value for `bottom-toolbar'.Vleft-toolbar
  8814. Specifier for toolbar at the left edge of the frame.
  8815. Use `set-specifier' to change this.
  8816. See `default-toolbar' for a description of a valid toolbar instantiator.
  8817.  
  8818. Note that by default the width of the left toolbar (controlled by
  8819. `left-toolbar-width') is 0; thus, a left toolbar will not be
  8820. displayed even if you provide a value for `left-toolbar'.Vright-toolbar
  8821. Specifier for toolbar at the right edge of the frame.
  8822. Use `set-specifier' to change this.
  8823. See `default-toolbar' for a description of a valid toolbar instantiator.
  8824.  
  8825. Note that by default the width of the right toolbar (controlled by
  8826. `right-toolbar-width') is 0; thus, a right toolbar will not be
  8827. displayed even if you provide a value for `right-toolbar'.Vtop-toolbar-height
  8828. *Height of top toolbar.
  8829. This is a specifier; use `set-specifier' to change it.Vbottom-toolbar-height
  8830. *Height of bottom toolbar.
  8831. This is a specifier; use `set-specifier' to change it.Vleft-toolbar-width
  8832. *Width of left toolbar.
  8833. This is a specifier; use `set-specifier' to change it.Vright-toolbar-width
  8834. *Width of right toolbar.
  8835. This is a specifier; use `set-specifier' to change it.Vtoolbar-buttons-captioned-p
  8836. *Whether the toolbar buttons are captioned.
  8837. This will only have a visible effect for those toolbar buttons which had
  8838. captioned versions specified.
  8839. This is a specifier; use `set-specifier' to change it.Fmd5
  8840. Return the MD5 (a secure message digest algorithm) of an object.
  8841. OBJECT is either a string or a buffer.
  8842. Optional arguments START and END denote buffer positions for computing the
  8843. hash of a portion of OBJECT.
  8844.  
  8845. arguments: (OBJECT &optional START END)
  8846. Fmmap-allocator-status
  8847. Return some information about mmap-based allocator.
  8848.  
  8849.   mmap-addrlist-size: number of entries in address picking list. 
  8850.   mmap-times-mapped: number of times r_alloc was called. 
  8851.   mmap-pages-mapped: number of pages mapped by r_alloc calls only. 
  8852.   mmap-times-unmapped: number of times r_free was called. 
  8853.   mmap-times-remapped: number of times r_re_alloc was called.
  8854.   mmap-didnt-copy: number of times  re-alloc didn't have to move the block.
  8855.   mmap-pages-copied: total number of pages copied.
  8856.   mmap-average-bumpval: average increase in size demanded to re-alloc.
  8857.   mmap-wastage: total number of bytes allocated, but not currently in use.
  8858.   mmap-live-pages: total number of pages live.
  8859.  
  8860. arguments: ()
  8861. Vmmap-hysteresis
  8862. Extra room left at the end of an allocated arena,
  8863. so that a re-alloc requesting extra space smaller than this 
  8864. does not actually cause a new arena to be allocated.
  8865.  
  8866. A negative value is considered equal to zero.  This is the 
  8867. minimum amount of space guaranteed to be left at the end of 
  8868. the arena.  Because allocation happens in multiples of the OS
  8869. page size, it is possible for more space to be left unused.
  8870. Vemacs-version
  8871. Version numbers of this version of Emacs.
  8872. Vemacs-build-time
  8873. Time at which Emacs was dumped out.
  8874. Femacs-version
  8875. Return string describing the version of Emacs that is running.
  8876. Flambda
  8877. Return a lambda expression.
  8878. A call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is
  8879. self-quoting; the result of evaluating the lambda expression is the
  8880. expression itself.  The lambda expression may then be treated as a
  8881. function, i. e. stored as the function value of a symbol, passed to
  8882. funcall or mapcar, etcetera.
  8883. ARGS should take the same form as an argument list for a `defun'.
  8884. DOCSTRING should be a string, as described for `defun'.  It may be omitted.
  8885. INTERACTIVE should be a call to the function `interactive', which see.
  8886. It may also be omitted.
  8887. BODY should be a list of lisp expressions.
  8888. Frun-hooks
  8889. Takes hook names and runs each one in turn.  Major mode functions use this.
  8890. Each argument should be a symbol, a hook variable.
  8891. These symbols are processed in the order specified.
  8892. If a hook symbol has a non-nil value, that value may be a function
  8893. or a list of functions to be called to run the hook.
  8894. If the value is a function, it is called with no arguments.
  8895. If it is a list, the elements are called, in order, with no arguments.
  8896. Frun-hook-with-args
  8897. Run HOOK with the specified arguments ARGS.
  8898. HOOK should be a symbol, a hook variable.  If HOOK has a non-nil
  8899. value, that value may be a function or a list of functions to be
  8900. called to run the hook.  If the value is a function, it is called with
  8901. the given arguments and its return value is returned.  If it is a
  8902. list, the elements are called, in order, with the given arguments,
  8903. and a list of the each function's return value is returned.
  8904. Frun-special-hook-with-args
  8905. Run HOOK with the specified arguments, returning the first non-nil value.
  8906. HOOK should be a symbol, a hook variable.  If HOOK has a non-nil
  8907. value, that value may be a function or a list of functions to be
  8908. called to run the hook.  If the value is a function, it is called with
  8909. the given arguments and its return value is returned.  If it is a
  8910. list, the elements are called, in order, with the given arguments,
  8911. until one of them returns non-nil, and this value is returned.
  8912. Fadd-hook
  8913. Add to the value of HOOK the function FUNCTION.
  8914. FUNCTION is not added if already present.
  8915. FUNCTION is added (if necessary) at the beginning of the hook list
  8916. unless the optional argument APPEND is non-nil, in which case
  8917. FUNCTION is added at the end.
  8918.  
  8919. HOOK should be a symbol, and FUNCTION may be any valid function.  If
  8920. HOOK is void, it is first set to nil.  If HOOK's value is a single
  8921. function, it is changed to a list of functions.
  8922. Fremove-hook
  8923. Remove from the value of HOOK the function FUNCTION.
  8924. HOOK should be a symbol, and FUNCTION may be any valid function.  If
  8925. FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the
  8926. list of hooks to run in HOOK, then nothing is done.  See `add-hook'.
  8927. Vkill-buffer-hook
  8928. Function or functions to be called when a buffer is killed.
  8929. The value of this variable may be buffer-local.
  8930. The buffer about to be killed is current when this hook is run.
  8931. Vkill-emacs-hook
  8932. Function or functions to be called when `kill-emacs' is called,
  8933. just before emacs is actually killed.
  8934. Fsecond
  8935. Return the second element of the list LIST.
  8936. Fthird
  8937. Return the third element of the list LIST.
  8938. Ffourth
  8939. Return the fourth element of the list LIST.
  8940. Ffifth
  8941. Return the fifth element of the list LIST.
  8942. Fsixth
  8943. Return the sixth element of the list LIST.
  8944. Fseventh
  8945. Return the seventh element of the list LIST.
  8946. Feighth
  8947. Return the eighth element of the list LIST.
  8948. Fninth
  8949. Return the ninth element of the list LIST.
  8950. Ftenth
  8951. Return the tenth element of the list LIST.
  8952. Fcaar
  8953. Return the `car' of the `car' of X.
  8954. Fcadr
  8955. Return the `car' of the `cdr' of X.
  8956. Fcdar
  8957. Return the `cdr' of the `car' of X.
  8958. Fcddr
  8959. Return the `cdr' of the `cdr' of X.
  8960. Fcaaar
  8961. Return the `car' of the `car' of the `car' of X.
  8962. Fcaadr
  8963. Return the `car' of the `car' of the `cdr' of X.
  8964. Fcadar
  8965. Return the `car' of the `cdr' of the `car' of X.
  8966. Fcaddr
  8967. Return the `car' of the `cdr' of the `cdr' of X.
  8968. Fcdaar
  8969. Return the `cdr' of the `car' of the `car' of X.
  8970. Fcdadr
  8971. Return the `cdr' of the `car' of the `cdr' of X.
  8972. Fcddar
  8973. Return the `cdr' of the `cdr' of the `car' of X.
  8974. Fcdddr
  8975. Return the `cdr' of the `cdr' of the `cdr' of X.
  8976. Fcaaaar
  8977. Return the `car' of the `car' of the `car' of the `car' of X.
  8978. Fcaaadr
  8979. Return the `car' of the `car' of the `car' of the `cdr' of X.
  8980. Fcaadar
  8981. Return the `car' of the `car' of the `cdr' of the `car' of X.
  8982. Fcaaddr
  8983. Return the `car' of the `car' of the `cdr' of the `cdr' of X.
  8984. Fcadaar
  8985. Return the `car' of the `cdr' of the `car' of the `car' of X.
  8986. Fcadadr
  8987. Return the `car' of the `cdr' of the `car' of the `cdr' of X.
  8988. Fcaddar
  8989. Return the `car' of the `cdr' of the `cdr' of the `car' of X.
  8990. Fcadddr
  8991. Return the `car' of the `cdr' of the `cdr' of the `cdr' of X.
  8992. Fcdaaar
  8993. Return the `cdr' of the `car' of the `car' of the `car' of X.
  8994. Fcdaadr
  8995. Return the `cdr' of the `car' of the `car' of the `cdr' of X.
  8996. Fcdadar
  8997. Return the `cdr' of the `car' of the `cdr' of the `car' of X.
  8998. Fcdaddr
  8999. Return the `cdr' of the `car' of the `cdr' of the `cdr' of X.
  9000. Fcddaar
  9001. Return the `cdr' of the `cdr' of the `car' of the `car' of X.
  9002. Fcddadr
  9003. Return the `cdr' of the `cdr' of the `car' of the `cdr' of X.
  9004. Fcdddar
  9005. Return the `cdr' of the `cdr' of the `cdr' of the `car' of X.
  9006. Fcddddr
  9007. Return the `cdr' of the `cdr' of the `cdr' of the `cdr' of X.
  9008. Flast
  9009. Returns the last link in the list LIST.
  9010. With optional argument N, returns Nth-to-last link (default 1).
  9011. Fbutlast
  9012. Returns a copy of LIST with the last N elements removed.
  9013. Fnbutlast
  9014. Modifies LIST to remove the last N elements.
  9015. Fpush
  9016. Insert VAL at the head of LIST.
  9017. Analogous to (setq LIST (cons VAL LIST)).
  9018. Fpop
  9019. Remove and return the head of LIST.
  9020. Analogous to (prog1 (car LIST) (setq LIST (cdr LIST))).
  9021. Fsome
  9022. Return true if PREDICATE is true of any element of SEQ.
  9023. If so, return the true (non-nil) value returned by PREDICATE.
  9024. Fevery
  9025. Return true if PREDICATE is true of every element of SEQ.
  9026. Fnotany
  9027. Return true if PREDICATE is false of every element of SEQ.
  9028. Fnotevery
  9029. Return true if PREDICATE is false of some element of SEQ.
  9030. Fmapvector
  9031. Apply FUNCTION to each element of SEQ, making a vector of the results.
  9032. The result is a vector of the same length as SEQ.
  9033. SEQ may be a list, a vector or a string.
  9034. Fadjoin
  9035. Add ITEM to LIST (unless it's already there) and return the new list.
  9036. Funion
  9037. Return a list of elements that appear in either LIST1 or LIST2.
  9038. Fintersection
  9039. Return a list of elements that appear in both LIST1 and LIST2.
  9040. Fset-difference
  9041. Return a list of elements of LIST1 that do not appear in LIST2.
  9042. Fset-exclusive-or
  9043. Return a list of elements that appear in exactly one of LIST1 and LIST2.
  9044. Fsubsetp
  9045. True if every element of LIST1 also appears in LIST2.
  9046. Freplace-in-string
  9047. Replaces all matches in STR for REGEXP with NEWTEXT string.
  9048. Optional LITERAL non-nil means do a literal replacement.
  9049. Otherwise treat \ in NEWTEXT string as special:
  9050.   \& means substitute original matched text,
  9051.   \N means substitute match for (...) number N,
  9052.   \\ means insert one \.
  9053. Fsplit-string
  9054. Return a list of substrings of STRING which are separated by PATTERN.
  9055. Fwith-output-to-string
  9056. Collect output to `standard-output' while evaluating FORMS and return
  9057. it as a string.
  9058. Finsert-face
  9059. Insert STRING and highlight with FACE.  Returns the extent created.
  9060. Fignore
  9061. Do nothing and return nil.
  9062. This function accepts any number of arguments, but ignores them.
  9063. Ferror
  9064. Signal an error, making error message by passing all args to `format'.
  9065. This error is not continuable: you cannot continue execution after the
  9066. error using the debugger `r' command.  See also `cerror'.
  9067. Fcerror
  9068. Like `error' but signals a continuable error.
  9069. Fcheck-argument-type
  9070. Check that ARGUMENT satisfies PREDICATE.
  9071. If not, signal a continuable `wrong-type-argument' error until the
  9072. returned value satifies PREDICATE, and assign the returned value
  9073. to ARGUMENT.
  9074. Fsave-current-buffer
  9075. Restore the current buffer setting after executing FORMS.
  9076. Does not restore the values of point and mark.
  9077. See also: `save-excursion'.
  9078. Feval-in-buffer
  9079. Evaluate FORMS in BUFFER.
  9080. See also: `save-current-buffer' and `save-excursion'.
  9081. Ffunctionp
  9082. Returns t if OBJ is a function, nil otherwise.
  9083. Fadd-to-list
  9084. Add to the value of LIST-VAR the element ELEMENT if it isn't there yet.
  9085. If you want to use `add-to-list' on a variable that is not defined
  9086. until a certain package is loaded, you should put the call to `add-to-list'
  9087. into a hook function that will be run only after loading the package.
  9088. Major mode hooks are one thing which can do the job.
  9089. Frecursion-depth
  9090. Return the current depth in recursive edits.
  9091. Ftop-level
  9092. Exit all recursive editing levels.
  9093. Fexit-recursive-edit
  9094. Exit from the innermost recursive edit or minibuffer.
  9095. Fabort-recursive-edit
  9096. Abort the command that requested this recursive edit or minibuffer input.
  9097. Fkeyboard-quit
  9098. Signal a `quit' condition.
  9099. If this character is typed while lisp code is executing, it will be treated
  9100.  as an interrupt.
  9101. If this character is typed at top-level, this simply beeps.
  9102. If `zmacs-regions' is true, and the zmacs region is active, then this
  9103.  key deactivates the region without beeping or signalling.
  9104. Vlast-error
  9105. #### Document me.
  9106. Fdescribe-last-error
  9107. Redisplay the last error-message.  See the variable `last-error'.
  9108. Fdisplay-error
  9109. Display `error-object' on `stream' in a user-friendly way.
  9110. Vteach-extended-commands-p
  9111. *If true, then `\[execute-extended-command]' will teach you keybindings.
  9112. Any time you execute a command with \[execute-extended-command] which has a
  9113. shorter keybinding, you will be shown the alternate binding before the
  9114. command executes.
  9115. Vteach-extended-commands-timeout
  9116. *How long to pause after displaying a keybinding before executing.
  9117. This only applies if `teach-extended-commands-p' is true.
  9118. Fexecute-extended-command
  9119. Read a command name from the minibuffer using 'completing-read'.
  9120. Then call the specified command using 'command-execute' and return its
  9121. return value.  If the command asks for a prefix argument, supply the
  9122. value of the current raw prefix argument, or the value of PREFIX-ARG
  9123. when called from Lisp.
  9124. Fy-or-n-p-minibuf
  9125. Ask user a "y or n" question.  Return t if answer is "y".
  9126. Takes one argument, which is the string to display to ask the question.
  9127. It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
  9128. No confirmation of the answer is requested; a single character is enough.
  9129. Also accepts Space to mean yes, or Delete to mean no.
  9130. Fyes-or-no-p-minibuf
  9131. Ask user a yes-or-no question.  Return t if answer is yes.
  9132. Takes one argument, which is the string to display to ask the question.
  9133. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
  9134. The user must confirm the answer with RET,
  9135. and can edit it until it has been confirmed.
  9136. Fread-char
  9137. Read a character from the command input (keyboard or macro).
  9138. If a mouse click or non-ASCII character is detected, an error is
  9139. signalled.  The character typed is returned as an ASCII value.  This
  9140. is most likely the wrong thing for you to be using: consider using
  9141. the `next-command-event' function instead.
  9142. Fread-char-exclusive
  9143. Read a character from the command input (keyboard or macro).
  9144. If a mouse click or non-ASCII character is detected, it is discarded.
  9145. The character typed is returned as an ASCII value.  This is most likely
  9146. the wrong thing for you to be using: consider using the
  9147. `next-command-event' function instead.
  9148. Fread-quoted-char
  9149. Like `read-char', except that if the first character read is an octal
  9150. digit, we read up to two more octal digits and return the character
  9151. represented by the octal number consisting of those digits.
  9152. Optional argument PROMPT specifies a string to use to prompt the user.
  9153. Fmomentary-string-display
  9154. Momentarily display STRING in the buffer at POS.
  9155. Display remains until next character is typed.
  9156. If the char is EXIT-CHAR (optional third arg, default is SPC) it is swallowed;
  9157. otherwise it is then available as input (as a command if nothing else).
  9158. Display MESSAGE (optional fourth arg) in the echo area.
  9159. If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there.
  9160. Vminor-mode-map-alist
  9161. Alist of keymaps to use for minor modes.
  9162. Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read
  9163. key sequences and look up bindings iff VARIABLE's value is non-nil.
  9164. If two active keymaps bind the same key, the keymap appearing earlier
  9165. in the list takes precedence.
  9166. Vmodeline-map
  9167. Keymap consulted for mouse-clicks on the modeline of a window.
  9168. This variable may be buffer-local; its value will be looked up in
  9169. the buffer of the window whose modeline was clicked upon.
  9170. Vtoolbar-map
  9171. Keymap consulted for mouse-clicks over a toolbar.
  9172. Fsuppress-keymap
  9173. Make MAP override all normally self-inserting keys to be undefined.
  9174. Normally, as an exception, digits and minus-sign are set to make prefix args,
  9175. but optional second arg NODIGITS non-nil treats them like other chars.
  9176. Fsubstitute-key-definition
  9177. Replace OLDDEF with NEWDEF for any keys in KEYMAP now defined as OLDDEF.
  9178. In other words, OLDDEF is replaced with NEWDEF wherever it appears.
  9179. Prefix keymaps are checked recursively.  If optional fourth argument OLDMAP
  9180. is specified, we redefine in KEYMAP as NEWDEF those chars which are defined
  9181. as OLDDEF in OLDMAP, unless that keybinding is already present in keymap.
  9182. If optional fifth argument PREFIX is defined, then only those occurrences of
  9183. OLDDEF found in keymaps accessible through the keymap bound to PREFIX in
  9184. KEYMAP are redefined.  See also `accessible-keymaps'.
  9185. Fread-command-or-command-sexp
  9186. Read a command symbol or command sexp.
  9187. A command sexp is wrapped in an interactive lambda if needed.
  9188. Prompts with PROMPT.
  9189. Flocal-key-binding
  9190. Return the binding for command KEYS in current local keymap only.
  9191. KEYS is a string, a vector of events, or a vector of key-description lists
  9192. as described in the documentation for the `define-key' function.
  9193. The binding is probably a symbol with a function definition; see
  9194. the documentation for `lookup-key' for more information.
  9195. Fglobal-key-binding
  9196. Return the binding for command KEYS in current global keymap only.
  9197. KEYS is a string or vector of events, a sequence of keystrokes.
  9198. The binding is probably a symbol with a function definition; see
  9199. the documentation for `lookup-key' for more information.
  9200. Fglobal-set-key
  9201. Give KEY a global binding as COMMAND.
  9202. COMMAND is a symbol naming an interactively-callable function.
  9203. KEYS is a string, a vector of events, or a vector of key-description lists
  9204. as described in the documentation for the `define-key' function.
  9205. Note that if KEY has a local binding in the current buffer
  9206. that local binding will continue to shadow any global binding.
  9207. Flocal-set-key
  9208. Give KEY a local binding as COMMAND.
  9209. COMMAND is a symbol naming an interactively-callable function.
  9210. KEYS is a string, a vector of events, or a vector of key-description lists
  9211. as described in the documentation for the `define-key' function.
  9212. The binding goes in the current buffer's local map,
  9213. which is shared with other buffers in the same major mode.
  9214. Fglobal-unset-key
  9215. Remove global binding of KEY.
  9216. KEYS is a string, a vector of events, or a vector of key-description lists
  9217. as described in the documentation for the `define-key' function.
  9218. Flocal-unset-key
  9219. Remove local binding of KEY.
  9220. KEYS is a string, a vector of events, or a vector of key-description lists
  9221. as described in the documentation for the `define-key' function.
  9222. Fminor-mode-key-binding
  9223. Find the visible minor mode bindings of KEY.
  9224. Return an alist of pairs (MODENAME . BINDING), where MODENAME is the
  9225. the symbol which names the minor mode binding KEY, and BINDING is
  9226. KEY's definition in that mode.  In particular, if KEY has no
  9227. minor-mode bindings, return nil.  If the first binding is a
  9228. non-prefix, all subsequent bindings will be omitted, since they would
  9229. be ignored.  Similarly, the list doesn't include non-prefix bindings
  9230. that come after prefix bindings.
  9231.  
  9232. If optional argument ACCEPT-DEFAULT is non-nil, recognize default
  9233. bindings; see the description of `lookup-key' for more details about this.
  9234. Fcurrent-minor-mode-maps
  9235. Return a list of keymaps for the minor modes of the current buffer.
  9236. Fdefine-prefix-command
  9237. Define COMMAND as a prefix command.
  9238. A new sparse keymap is stored as COMMAND's function definition.
  9239. If second optional argument MAPVAR is not specified,
  9240.  COMMAND's value (as well as its function definition) is set to the keymap.
  9241. If a second optional argument MAPVAR is given and is not `t',
  9242.   the map is stored as its value.
  9243. Regardless of MAPVAR, COMMAND's function-value is always set to the keymap.
  9244. Fevents-to-keys
  9245. Given a vector of event objects, returns a vector of key descriptors,
  9246. or a string (if they all fit in the ASCII range).
  9247. Optional arg NO-MICE means that button events are not allowed.
  9248. Fmake-syntax-table
  9249. Return a new syntax table.
  9250. It inherits all letters and control characters from the standard
  9251. syntax table; other characters are copied from the standard syntax table.
  9252. Fmodify-syntax-entry
  9253. Set syntax for character CHAR according to string S.
  9254. The syntax is changed only for table TABLE, which defaults to
  9255.  the current buffer's syntax table.
  9256. The first character of S should be one of the following:
  9257.   Space    whitespace syntax.    w   word constituent.
  9258.   _        symbol constituent.   .   punctuation.
  9259.   (        open-parenthesis.     )   close-parenthesis.
  9260.   "        string quote.         \   character-quote.
  9261.   $        paired delimiter.     '   expression quote or prefix operator.
  9262.   <       comment starter.     >   comment ender.
  9263.   /           character-quote.      @   inherit from `standard-syntax-table'.
  9264.  
  9265. Only single-character comment start and end sequences are represented thus.
  9266. Two-character sequences are represented as described below.
  9267. The second character of S is the matching parenthesis,
  9268.  used only if the first character is `(' or `)'.
  9269. Any additional characters are flags.
  9270. Defined flags are the characters 1, 2, 3, 4, 5, 6, 7, 8, p, a, and b.
  9271.  1 means C is the first of a two-char comment start sequence of style a.
  9272.  2 means C is the second character of such a sequence.
  9273.  3 means C is the first of a two-char comment end sequence of style a.
  9274.  4 means C is the second character of such a sequence.
  9275.  5 means C is the first of a two-char comment start sequence of style b.
  9276.  6 means C is the second character of such a sequence.
  9277.  7 means C is the first of a two-char comment end sequence of style b.
  9278.  8 means C is the second character of such a sequence.
  9279.  p means C is a prefix character for `backward-prefix-chars';
  9280.    such characters are treated as whitespace when they occur
  9281.    between expressions.
  9282.  a means C is comment starter or comment ender for comment style a (default)
  9283.  b means C is comment starter or comment ender for comment style b.
  9284. Fsymbol-near-point
  9285. Return the first textual item to the nearest point.
  9286. Vinsert-default-directory
  9287. *Non-nil means when reading a filename start with default dir in minibuffer.
  9288. Vminibuffer-completion-table
  9289. Alist or obarray used for completion in the minibuffer.
  9290. This becomes the ALIST argument to `try-completion' and `all-completions'.
  9291.  
  9292. The value may alternatively be a function, which is given three arguments:
  9293.   STRING, the current buffer contents;
  9294.   PREDICATE, the predicate for filtering possible matches;
  9295.   CODE, which says what kind of things to do.
  9296. CODE can be nil, t or `lambda'.
  9297. nil means to return the best completion of STRING, nil if there is none,
  9298.   or t if it is was already a unique completion.
  9299. t means to return a list of all possible completions of STRING.
  9300. `lambda' means to return t if STRING is a valid completion as it stands.
  9301. Vminibuffer-completion-predicate
  9302. Within call to `completing-read', this holds the PREDICATE argument.
  9303. Vminibuffer-completion-confirm
  9304. Non-nil => demand confirmation of completion before exiting minibuffer.
  9305. Vminibuffer-confirm-incomplete
  9306. If true, then in contexts where completing-read allows answers which
  9307. are not valid completions, an extra RET must be typed to confirm the
  9308. response.  This is helpful for catching typos, etc.
  9309. Vcompletion-auto-help
  9310. *Non-nil means automatically provide help for invalid completion input.
  9311. Venable-recursive-minibuffers
  9312. *Non-nil means to allow minibuffer commands while in the minibuffer.
  9313. More precisely, this variable makes a difference when the minibuffer window
  9314. is the selected window.  If you are in some other window, minibuffer commands
  9315. are allowed even if a minibuffer is active.
  9316. Vminibuffer-max-depth
  9317. *Global maximum number of minibuffers allowed;
  9318. compare to enable-recursive-minibuffers, which is only consulted when the
  9319. minibuffer is reinvoked while it is the selected window.
  9320. Vminibuffer-exit-hook
  9321. Normal hook run just after exit from minibuffer.
  9322. Vminibuffer-help-form
  9323. Value that `help-form' takes on inside the minibuffer.
  9324. Vminibuffer-local-map
  9325. Default keymap to use when reading from the minibuffer.
  9326. Vminibuffer-local-completion-map
  9327. Local keymap for minibuffer input with completion.
  9328. Vminibuffer-local-must-match-map
  9329. Local keymap for minibuffer input with completion, for exact match.
  9330. Vread-expression-map
  9331. Minibuffer keymap used for reading Lisp expressions.
  9332. Vread-shell-command-map
  9333. Minibuffer keymap used by shell-command and related commands.
  9334. Fminibuffer-keyboard-quit
  9335. Abort recursive edit.
  9336. If `zmacs-regions' is true, and the zmacs region is active, then this
  9337. key deactivates the region without beeping.
  9338. Fminibuffer-window-active-p
  9339. Return t if WINDOW (a minibuffer window) is now active.
  9340. Vminibuffer-history-variable
  9341. History list symbol to add minibuffer values to.
  9342. Each minibuffer output is added with
  9343.   (set minibuffer-history-variable
  9344.        (cons STRING (symbol-value minibuffer-history-variable)))
  9345. Vminibuffer-history-minimum-string-length
  9346. If this variable is non-nil, a string will not be added to the
  9347. minibuffer history if its length is less than that value.
  9348. Fread-from-minibuffer
  9349. Read a string from the minibuffer, prompting with string PROMPT.
  9350. If optional second arg INITIAL-CONTENTS is non-nil, it is a string
  9351.   to be inserted into the minibuffer before reading input.
  9352.   If INITIAL-CONTENTS is (STRING . POSITION), the initial input
  9353.   is STRING, but point is placed POSITION characters into the string.
  9354. Third arg KEYMAP is a keymap to use whilst reading;
  9355.   if omitted or nil, the default is `minibuffer-local-map'.
  9356. If fourth arg READ is non-nil, then interpret the result as a lisp object
  9357.   and return that object:
  9358.   in other words, do `(car (read-from-string INPUT-STRING))'
  9359. Fifth arg HISTORY, if non-nil, specifies a history list
  9360.   and optionally the initial position in the list.
  9361.   It can be a symbol, which is the history list variable to use,
  9362.   or it can be a cons cell (HISTVAR . HISTPOS).
  9363.   In that case, HISTVAR is the history list variable to use,
  9364.   and HISTPOS is the initial position (the position in the list
  9365.   which INITIAL-CONTENTS corresponds to).
  9366.   If HISTORY is `t', no history will be recorded.
  9367.   Positions are counted starting from 1 at the beginning of the list.
  9368. Sixth arg ABBREV-TABLE, if non-nil, becomes the value of `local-abbrev-table'
  9369.   in the minibuffer.
  9370.  
  9371. See also the variable completion-highlight-first-word-only for control over completion display
  9372. Fcompleting-read
  9373. Read a string in the minibuffer, with completion.
  9374. Args: PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-CONTENTS, HISTORY.
  9375. PROMPT is a string to prompt with; normally it ends in a colon and a space.
  9376. TABLE is an alist whose elements' cars are strings, or an obarray.
  9377. PREDICATE limits completion to a subset of TABLE.
  9378. See `try-completion' for more details on completion, TABLE, and PREDICATE.
  9379. If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless
  9380.  the input is (or completes to) an element of TABLE or is null.
  9381.  If it is also not t, Return does not exit if it does non-null completion.
  9382. If INITIAL-CONTENTS is non-nil, insert it in the minibuffer initially.
  9383.   If it is (STRING . POSITION), the initial input
  9384.   is STRING, but point is placed POSITION characters into the string.
  9385. HISTORY, if non-nil, specifies a history list
  9386.   and optionally the initial position in the list.
  9387.   It can be a symbol, which is the history list variable to use,
  9388.   or it can be a cons cell (HISTVAR . HISTPOS).
  9389.   In that case, HISTVAR is the history list variable to use,
  9390.   and HISTPOS is the initial position (the position in the list
  9391.   which INITIAL-CONTENTS corresponds to).
  9392.   If HISTORY is `t', no history will be recorded.
  9393.   Positions are counted starting from 1 at the beginning of the list.
  9394. Completion ignores case if the ambient value of
  9395.   `completion-ignore-case' is non-nil.
  9396. Fminibuffer-complete
  9397. Complete the minibuffer contents as far as possible.
  9398. Return nil if there is no valid completion, else t.
  9399. If no characters can be completed, display a list of possible completions.
  9400. If you repeat this command after it displayed such a list,
  9401. scroll the window of possible completions.
  9402. Fminibuffer-complete-and-exit
  9403. Complete the minibuffer contents, and maybe exit.
  9404. Exit if the name is valid with no completion needed.
  9405. If name was completed to a valid match,
  9406. a repetition of this command will exit.
  9407. Fself-insert-and-exit
  9408. Terminate minibuffer input.
  9409. Fexit-minibuffer
  9410. Terminate this minibuffer argument.
  9411. If minibuffer-confirm-incomplete is true, and we are in a completing-read
  9412. of some kind, and the contents of the minibuffer is not an existing
  9413. completion, requires an additional RET before the minibuffer will be exited
  9414. (assuming that RET was the character that invoked this command:
  9415. the character in question must be typed again).
  9416. Fminibuffer-complete-word
  9417. Complete the minibuffer contents at most a single word.
  9418. After one word is completed as much as possible, a space or hyphen
  9419. is added, provided that matches some possible completion.
  9420. Return nil if there is no valid completion, else t.
  9421. Vcompletion-highlight-first-word-only
  9422. *Completion will only hightlight the first blank delimited word if t.
  9423. If the variable in not t or nil, the string is taken as a regexp to match for end
  9424. of highlight
  9425. Fdisplay-completion-list
  9426. Display the list of completions, COMPLETIONS, using `standard-output'.
  9427. Each element may be just a symbol or string or may be a list of two
  9428.  strings to be printed as if concatenated.
  9429. Frob a mousable extent onto each completion.  This extent has properties
  9430.  'highlight (so it highlights when the mouse passes over it) and
  9431.  'completion (so it can be located).  If ACTIVATE-CALLBACK is non-nil,
  9432.  it should be a function of two arguments (EXTENT USER-DATA) that will
  9433.  be called when button2 is pressed on the extent. (This is set up
  9434.  using an extent-local keymap; therefore, button2 will have its normal
  9435.  binding if clicked outside of the extent.)
  9436. At the end, run the normal hook `completion-setup-hook'.
  9437. It can find the completion buffer in `standard-output'.
  9438. If `completion-highlight-first-word-only' is non-nil, then only the start
  9439.  of the string is highlighted.
  9440. Fminibuffer-completion-help
  9441. Display a list of possible completions of the current minibuffer contents.
  9442. Vminibuffer-history
  9443. Default minibuffer history list.
  9444. This is used for all minibuffer input except when an alternate history
  9445. list is specified.
  9446. Vminibuffer-history-sexp-flag
  9447. Non-nil when doing history operations on `command-history'.
  9448. More generally, indicates that the history list being acted on
  9449. contains expressions rather than strings.
  9450. Fprevious-matching-history-element
  9451. Find the previous history element that matches REGEXP.
  9452. (Previous history elements refer to earlier actions.)
  9453. With prefix argument N, search for Nth previous match.
  9454. If N is negative, find the next or Nth next match.
  9455. Fnext-matching-history-element
  9456. Find the next history element that matches REGEXP.
  9457. (The next history element refers to a more recent action.)
  9458. With prefix argument N, search for Nth next match.
  9459. If N is negative, find the previous or Nth previous match.
  9460. Fnext-history-element
  9461. Insert the next element of the minibuffer history into the minibuffer.
  9462. Fprevious-history-element
  9463. Inserts the previous element of the minibuffer history into the minibuffer.
  9464. Fnext-complete-history-element
  9465. Get next element of history which is a completion of minibuffer contents.
  9466. Fprevious-complete-history-element
  9467. Get previous element of history which is a completion of minibuffer contents.
  9468. Fread-expression
  9469. Return a Lisp object read using the minibuffer.
  9470. Prompt with PROMPT.  If non-nil, optional second arg INITIAL-CONTENTS
  9471. is a string to insert in the minibuffer before reading.
  9472. Third arg HISTORY, if non-nil, specifies a history list.
  9473. Fread-string
  9474. Return a string from the minibuffer, prompting with string PROMPT.
  9475. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert
  9476. in the minibuffer before reading.
  9477. Third arg HISTORY, if non-nil, specifies a history list.
  9478. Feval-minibuffer
  9479. Return value of Lisp expression read using the minibuffer.
  9480. Prompt with PROMPT.  If non-nil, optional second arg INITIAL-CONTENTS
  9481. is a string to insert in the minibuffer before reading.
  9482. Third arg HISTORY, if non-nil, specifies a history list.
  9483. Fread-command
  9484. Read the name of a command and return as a symbol.
  9485. Prompts with PROMPT.
  9486. Fread-function
  9487. Read the name of a function and return as a symbol.
  9488. Prompts with PROMPT.
  9489. Fread-variable
  9490. Read the name of a user variable and return it as a symbol.
  9491. Prompts with PROMPT.
  9492. A user variable is one whose documentation starts with a `*' character.
  9493. Fread-buffer
  9494. Read the name of a buffer and return as a string.
  9495. Prompts with PROMPT.  Optional second arg DEFAULT is value to return if user
  9496. enters an empty line.  If optional third arg REQUIRE-MATCH is non-nil,
  9497. only existing buffer names are allowed.
  9498. Fread-number
  9499. Reads a number from the minibuffer.
  9500. Fread-shell-command
  9501. Just like read-string, but uses read-shell-command-map:
  9502. \{read-shell-command-map}
  9503. Fread-file-name
  9504. Read file name, prompting with PROMPT and completing in directory DIR.
  9505. Value is not expanded---you must call `expand-file-name' yourself.
  9506. Value is subject to interpreted by substitute-in-file-name however.
  9507. Default name to DEFAULT if user enters a null string.
  9508.  (If DEFAULT is omitted, the visited file name is used.)
  9509. Fourth arg MUST-MATCH non-nil means require existing file's name.
  9510.  Non-nil and non-t means also require confirmation after completion.
  9511. Fifth arg INITIAL-CONTENTS specifies text to start with.
  9512. Sixth arg HISTORY specifies the history list to use.  Default is
  9513.  `file-name-history'.
  9514. DIR defaults to current buffer's directory default.
  9515. Fread-directory-name
  9516. Read directory name, prompting with PROMPT and completing in directory DIR.
  9517. Value is not expanded---you must call `expand-file-name' yourself.
  9518. Value is subject to interpreted by substitute-in-file-name however.
  9519. Default name to DEFAULT if user enters a null string.
  9520.  (If DEFAULT is omitted, the current buffer's default directory is used.)
  9521. Fourth arg MUST-MATCH non-nil means require existing directory's name.
  9522.  Non-nil and non-t means also require confirmation after completion.
  9523. Fifth arg INITIAL-CONTENTS specifies text to start with.
  9524. Sixth arg HISTORY specifies the history list to use.  Default is
  9525.  `file-name-history'.
  9526. DIR defaults to current buffer's directory default.
  9527. Fappend-expand-filename
  9528. Append STRING to FILE-STRING differently depending on whether STRING
  9529. is a username (~string), an environment variable ($string), 
  9530. or a filename (/string).  The resultant string is returned with the 
  9531. environment variable or username expanded and resolved to indicate 
  9532. whether it is a file(/result) or a directory (/result/).
  9533. Fread-face
  9534. Read the name of a face from the minibuffer and return it as a symbol.
  9535. Vx-library-search-path
  9536. Search path used by `read-color' to find rgb.txt.
  9537. Fread-color
  9538. Read the name of a color from the minibuffer.
  9539. Uses `x-library-search-path' to find rgb.txt in order to build a completion
  9540. table.
  9541. Fread-coding-system
  9542. Read a coding-system (or nil) from the minibuffer.
  9543. Prompting with string PROMPT.
  9544. Fread-non-nil-coding-system
  9545. Read a non-nil coding-system from the minibuffer.
  9546. Prompt with string PROMPT.
  9547. Vbuilt-in-face-specifiers
  9548. A list of the built-in face properties that are specifiers.
  9549. Fface-property
  9550. Return FACE's value of the given PROPERTY.
  9551.  
  9552. If LOCALE is omitted, the FACE's actual value for PROPERTY will be
  9553.   returned.  For built-in properties, this will be a specifier object
  9554.   of a type appropriate to the property (e.g. a font or color
  9555.   specifier).  For other properties, this could be anything.
  9556.  
  9557. If LOCALE is supplied, then instead of returning the actual value,
  9558.   the specification(s) for the given locale or locale type will
  9559.   be returned.  This will only work if the actual value of
  9560.   PROPERTY is a specifier (this will always be the case for built-in
  9561.   properties, but not or not may apply to user-defined properties).
  9562.   If the actual value of PROPERTY is not a specifier, this value
  9563.   will simply be returned regardless of LOCALE.
  9564.  
  9565. The return value will be a list of instantiators (e.g. strings
  9566.   specifying a font or color name), or a list of specifications, each
  9567.   of which is a cons of a locale and a list of instantiators.
  9568.   Specifically, if LOCALE is a particular locale (a buffer, window,
  9569.   frame, device, or 'global), a list of instantiators for that locale
  9570.   will be returned.  Otherwise, if LOCALE is a locale type (one of
  9571.   the symbols 'buffer, 'window, 'frame, or 'device), the specifications
  9572.   for all locales of that type will be returned.  Finally, if LOCALE is
  9573.   'all, the specifications for all locales of all types will be returned.
  9574.  
  9575. The specifications in a specifier determine what the value of
  9576.   PROPERTY will be in a particular "domain" or set of circumstances,
  9577.   which is typically a particular Emacs window along with the buffer
  9578.   it contains and the frame and device it lies within.  The value
  9579.   is derived from the instantiator associated with the most specific
  9580.   locale (in the order buffer, window, frame, device, and 'global)
  9581.   that matches the domain in question.  In other words, given a domain
  9582.   (i.e. an Emacs window, usually), the specifier for PROPERTY will first
  9583.   be searched for a specification whose locale is the buffer contained
  9584.   within that window; then for a specification whose locale is the window
  9585.   itself; then for a specification whose locale is the frame that the
  9586.   window is contained within; etc.  The first instantiator that is
  9587.   valid for the domain (usually this means that the instantiator is
  9588.   recognized by the device [i.e. the X server or TTY device] that the
  9589.   domain is on.  The function `face-property-instance' actually does
  9590.   all this, and is used to determine how to display the face.
  9591.  
  9592. See `set-face-property' for the built-in property-names.
  9593. Fconvert-face-property-into-specifier
  9594. Convert PROPERTY on FACE into a specifier, if it's not already.
  9595. Fface-property-instance
  9596. Return the instance of FACE's PROPERTY in the specified DOMAIN.
  9597.  
  9598. Under most circumstances, DOMAIN will be a particular window,
  9599.   and the returned instance describes how the specified property
  9600.   actually is displayed for that window and the particular buffer
  9601.   in it.  Note that this may not be the same as how the property
  9602.   appears when the buffer is displayed in a different window or
  9603.   frame, or how the property appears in the same window if you
  9604.   switch to another buffer in that window; and in those cases,
  9605.   the returned instance would be different.
  9606.  
  9607. The returned instance will typically be a color-instance,
  9608.   font-instance, or pixmap-instance object, and you can query
  9609.   it using the appropriate object-specific functions.  For example,
  9610.   you could use `color-instance-rgb-components' to find out the
  9611.   RGB (red, green, and blue) components of how the 'background
  9612.   property of the 'highlight face is displayed in a particular
  9613.   window.  The results might be different from the results
  9614.   you would get for another window (perhaps the user
  9615.   specified a different color for the frame that window is on;
  9616.   or perhaps the same color was specified but the window is
  9617.   on a different X server, and that X server has different RGB
  9618.   values for the color from this one).
  9619.  
  9620. DOMAIN defaults to the selected window if omitted.
  9621.  
  9622. DOMAIN can be a frame or device, instead of a window.  The value
  9623.   returned for a such a domain is used in special circumstances
  9624.   when a more specific domain does not apply; for example, a frame
  9625.   value might be used for coloring a toolbar, which is conceptually
  9626.   attached to a frame rather than a particular window.  The value
  9627.   is also useful in determining what the value would be for a
  9628.   particular window within the frame or device, if it is not
  9629.   overridden by a more specific specification.
  9630.  
  9631. If PROPERTY does not name a built-in property, its value will
  9632.   simply be returned unless it is a specifier object, in which case
  9633.   it will be instanced using `specifier-instance'.
  9634.  
  9635. Optional arguments DEFAULT and NO-FALLBACK are the same as in
  9636.   `specifier-instance'.
  9637. Fset-face-property
  9638. Change a property of a FACE.
  9639.  
  9640. NOTE: If you want to remove a property from a face, use `remove-face-property'
  9641.   rather than attempting to set a value of nil for the property.
  9642.  
  9643. For built-in properties, the actual value of the property is a
  9644.   specifier and you cannot change this; but you can change the
  9645.   specifications within the specifier, and that is what this function
  9646.   will do.  For user-defined properties, you can use this function
  9647.   to either change the actual value of the property or, if this value
  9648.   is a specifier, change the specifications within it.
  9649.  
  9650. If PROPERTY is a built-in property, the specifications to be added to
  9651.   this property can be supplied in many different ways:
  9652.  
  9653.   -- If VALUE is a simple instantiator (e.g. a string naming a font or
  9654.      color) or a list of instantiators, then the instantiator(s) will
  9655.      be added as a specification of the property for the given LOCALE
  9656.      (which defaults to 'global if omitted).
  9657.   -- If VALUE is a list of specifications (each of which is a cons of
  9658.      a locale and a list of instantiators), then LOCALE must be nil
  9659.      (it does not make sense to explicitly specify a locale in this
  9660.      case), and specifications will be added as given.
  9661.   -- If VALUE is a specifier (as would be returned by `face-property'
  9662.      if no LOCALE argument is given), then some or all of the
  9663.      specifications in the specifier will be added to the property.
  9664.      In this case, the function is really equivalent to
  9665.      `copy-specifier' and LOCALE has the same semantics (if it is
  9666.      a particular locale, the specification for the locale will be
  9667.      copied; if a locale type, specifications for all locales of
  9668.      that type will be copied; if nil or 'all, then all
  9669.      specifications will be copied).
  9670.  
  9671. HOW-TO-ADD should be either nil or one of the symbols 'prepend,
  9672.   'append, 'remove-tag-set-prepend, 'remove-tag-set-append, 'remove-locale,
  9673.   'remove-locale-type, or 'remove-all.  See `copy-specifier' and
  9674.   `add-spec-to-specifier' for a description of what each of
  9675.   these means.  Most of the time, you do not need to worry about
  9676.   this argument; the default behavior usually is fine.
  9677.  
  9678. In general, it is OK to pass an instance object (e.g. as returned
  9679.   by `face-property-instance') as an instantiator in place of
  9680.   an actual instantiator.  In such a case, the instantiator used
  9681.   to create that instance object will be used (for example, if
  9682.   you set a font-instance object as the value of the 'font
  9683.   property, then the font name used to create that object will
  9684.   be used instead).  If some cases, however, doing this
  9685.   conversion does not make sense, and this will be noted in
  9686.   the documentation for particular types of instance objects.
  9687.  
  9688. If PROPERTY is not a built-in property, then this function will
  9689.   simply set its value if LOCALE is nil.  However, if LOCALE is
  9690.   given, then this function will attempt to add VALUE as the
  9691.   instantiator for the given LOCALE, using `add-spec-to-specifier'.
  9692.   If the value of the property is not a specifier, it will
  9693.   automatically be converted into a 'generic specifier.
  9694.  
  9695.  
  9696. The following symbols have predefined meanings:
  9697.  
  9698.  foreground        The foreground color of the face.
  9699.  
  9700.  background        The background color of the face.
  9701.  
  9702.  font            The font used to display text covered by this face.
  9703.  
  9704.  display-table        The display table of the face.
  9705.  
  9706.  background-pixmap    The pixmap displayed in the background of the face.
  9707.             Only used by faces on X devices.
  9708.  
  9709.  underline        Underline all text covered by this face.
  9710.  
  9711.  highlight        Highlight all text covered by this face.
  9712.             Only used by faces on TTY devices.
  9713.  
  9714.  dim            Dim all text covered by this face.
  9715.             Only used by faces on TTY devices.
  9716.  
  9717.  blinking        Blink all text covered by this face.
  9718.             Only used by faces on TTY devices.
  9719.  
  9720.  reverse        Reverse the foreground and background colors.
  9721.             Only used by faces on TTY devices.
  9722.  
  9723.  doc-string        Description of what the face's normal use is.
  9724.             NOTE: This is not a specifier, unlike all
  9725.             the other built-in properties, and cannot
  9726.             contain locale-specific values.
  9727. Fremove-face-property
  9728. Remove a property from a face.
  9729. For built-in properties, this is analogous to `remove-specifier'.
  9730. See `remove-specifier' for the meaning of the LOCALE, TAG-SET, and EXACT-P arguments.
  9731. Freset-face
  9732. Clear all existing built-in specifications from FACE.
  9733. This makes FACE inherit all its display properties from 'default.
  9734. WARNING: Be absolutely sure you want to do this!!!  It is a dangerous
  9735. operation and is not undoable.
  9736. Fface-doc-string
  9737. Return the documentation string for FACE.
  9738. Fset-face-doc-string
  9739. Change the documentation string of FACE to DOC-STRING.
  9740. Fface-font-name
  9741. Return the font name of the given face, or nil if it is unspecified.
  9742. DOMAIN is as in `face-font-instance'.
  9743. Fface-font
  9744. Return the font of the given face, or nil if it is unspecified.
  9745.  
  9746. FACE may be either a face object or a symbol representing a face.
  9747.  
  9748. LOCALE may be a locale (the instantiators for that particular locale
  9749.   will be returned), a locale type (the specifications for all locales
  9750.   of that type will be returned), 'all (all specifications will be
  9751.   returned), or nil (the actual specifier object will be returned).
  9752.  
  9753. See `face-property' for more information.
  9754. Fface-font-instance
  9755. Return the instance of the given face's font in the given domain.
  9756.  
  9757. FACE may be either a face object or a symbol representing a face.
  9758.  
  9759. Normally DOMAIN will be a window or nil (meaning the selected window),
  9760.   and an instance object describing how the font appears in that
  9761.   particular window and buffer will be returned.
  9762.  
  9763. See `face-property-instance' for more information.
  9764. Fset-face-font
  9765. Change the font of the given face.
  9766.  
  9767. FACE may be either a face object or a symbol representing a face.
  9768.  
  9769. FONT should be an instantiator (a string naming a font; e.g. under
  9770.   X this might be "-*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*"
  9771.   for a 14-point upright medium-weight Courier font), a list of
  9772.   instantiators, an alist of specifications (each mapping a
  9773.   locale to an instantiator list), or a font specifier object.
  9774.  
  9775. If FONT is an alist, LOCALE must be omitted.  If FONT is a
  9776.   specifier object, LOCALE can be a locale, a locale type, 'all,
  9777.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  9778.   specifies the locale under which the specified instantiator(s)
  9779.   will be added, and defaults to 'global.
  9780.  
  9781. See `set-face-property' for more information.
  9782. Fface-foreground
  9783. Return the foreground of the given face, or nil if it is unspecified.
  9784.  
  9785. FACE may be either a face object or a symbol representing a face.
  9786.  
  9787. LOCALE may be a locale (the instantiators for that particular locale
  9788.   will be returned), a locale type (the specifications for all locales
  9789.   of that type will be returned), 'all (all specifications will be
  9790.   returned), or nil (the actual specifier object will be returned).
  9791.  
  9792. See `face-property' for more information.
  9793. Fface-foreground-instance
  9794. Return the instance of the given face's foreground in the given domain.
  9795.  
  9796. FACE may be either a face object or a symbol representing a face.
  9797.  
  9798. Normally DOMAIN will be a window or nil (meaning the selected window),
  9799.   and an instance object describing how the foreground appears in that
  9800.   particular window and buffer will be returned.
  9801.  
  9802. See `face-property-instance' for more information.
  9803. Fset-face-foreground
  9804. Change the foreground of the given face.
  9805.  
  9806. FACE may be either a face object or a symbol representing a face.
  9807.  
  9808. COLOR should be an instantiator (a string naming a color; e.g. under X
  9809.   this might be "lightseagreen2" or "#F534B2"), a list of
  9810.   instantiators, an alist of specifications (each mapping a locale to
  9811.   an instantiator list), or a color specifier object.
  9812.  
  9813. If COLOR is an alist, LOCALE must be omitted.  If COLOR is a
  9814.   specifier object, LOCALE can be a locale, a locale type, 'all,
  9815.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  9816.   specifies the locale under which the specified instantiator(s)
  9817.   will be added, and defaults to 'global.
  9818.  
  9819. See `set-face-property' for more information.
  9820. Fface-background
  9821. Return the background of the given face, or nil if it is unspecified.
  9822.  
  9823. FACE may be either a face object or a symbol representing a face.
  9824.  
  9825. LOCALE may be a locale (the instantiators for that particular locale
  9826.   will be returned), a locale type (the specifications for all locales
  9827.   of that type will be returned), 'all (all specifications will be
  9828.   returned), or nil (the actual specifier object will be returned).
  9829.  
  9830. See `face-property' for more information.
  9831. Fface-background-instance
  9832. Return the instance of the given face's background in the given domain.
  9833.  
  9834. FACE may be either a face object or a symbol representing a face.
  9835.  
  9836. Normally DOMAIN will be a window or nil (meaning the selected window),
  9837.   and an instance object describing how the background appears in that
  9838.   particular window and buffer will be returned.
  9839.  
  9840. See `face-property-instance' for more information.
  9841. Fset-face-background
  9842. Change the background of the given face.
  9843.  
  9844. FACE may be either a face object or a symbol representing a face.
  9845.  
  9846. COLOR should be an instantiator (a string naming a color; e.g. under X
  9847.   this might be "lightseagreen2" or "#F534B2"), a list of
  9848.   instantiators, an alist of specifications (each mapping a locale to
  9849.   an instantiator list), or a color specifier object.
  9850.  
  9851. If COLOR is an alist, LOCALE must be omitted.  If COLOR is a
  9852.   specifier object, LOCALE can be a locale, a locale type, 'all,
  9853.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  9854.   specifies the locale under which the specified instantiator(s)
  9855.   will be added, and defaults to 'global.
  9856.  
  9857. See `set-face-property' for more information.
  9858. Fface-background-pixmap
  9859. Return the background pixmap of the given face, or nil if it is unspecified.
  9860. This property is only used on X devices.
  9861.  
  9862. FACE may be either a face object or a symbol representing a face.
  9863.  
  9864. LOCALE may be a locale (the instantiators for that particular locale
  9865.   will be returned), a locale type (the specifications for all locales
  9866.   of that type will be returned), 'all (all specifications will be
  9867.   returned), or nil (the actual specifier object will be returned).
  9868.  
  9869. See `face-property' for more information.
  9870. Fface-background-pixmap-instance
  9871. Return the instance of the given face's background pixmap in the given domain.
  9872.  
  9873. FACE may be either a face object or a symbol representing a face.
  9874.  
  9875. Normally DOMAIN will be a window or nil (meaning the selected window),
  9876.   and an instance object describing how the background appears in that
  9877.   particular window and buffer will be returned.
  9878.  
  9879. See `face-property-instance' for more information.
  9880. Fset-face-background-pixmap
  9881. Change the background pixmap of the given face.
  9882. This property is only used on X devices.
  9883.  
  9884. FACE may be either a face object or a symbol representing a face.
  9885.  
  9886. PIXMAP should be an instantiator (the name of a file of pixmap data, a
  9887.   string that is the contents of an XPM file if XPM support was
  9888.   compiled in, a vector of the from `[width height data]'
  9889.   specifying the pixmap data), a list of instantiators, an alist of
  9890.   specifications (each mapping a locale to an instantiator list), or an
  9891.   image specifier object.
  9892.  
  9893. If PIXMAP is an alist, LOCALE must be omitted.  If PIXMAP is a
  9894.   specifier object, LOCALE can be a locale, a locale type, 'all,
  9895.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  9896.   specifies the locale under which the specified instantiator(s)
  9897.   will be added, and defaults to 'global.
  9898.  
  9899. See `set-face-property' for more information.
  9900. Fface-display-table
  9901. Return the display table of the given face.
  9902.  
  9903. A vector (as returned by `make-display-table') will be returned.
  9904.  
  9905. LOCALE may be a locale (the instantiators for that particular locale
  9906.   will be returned), a locale type (the specifications for all locales
  9907.   of that type will be returned), 'all (all specifications will be
  9908.   returned), or nil (the actual specifier object will be returned).
  9909.  
  9910. See `face-property' for more information.
  9911. Fface-display-table-instance
  9912. Return the instance of FACE's display table in DOMAIN.
  9913. A vector (as returned by `make-display-table') will be returned.
  9914.  
  9915. See `face-property-instance' for the semantics of the DOMAIN argument.
  9916. Fset-face-display-table
  9917. Change the display table of the given face.
  9918. DISPLAY-TABLE should be a vector as returned by `make-display-table'.
  9919.  
  9920. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD
  9921.   arguments.
  9922. Fface-underline-p
  9923. Return whether the given face is underlined.
  9924. See `face-property-instance' for the semantics of the DOMAIN argument.
  9925. Fset-face-underline-p
  9926. Change whether the given face is underlined.
  9927. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD
  9928.   arguments.
  9929. Fface-highlight-p
  9930. Return whether the given face is highlighted (TTY domains only).
  9931. See `face-property-instance' for the semantics of the DOMAIN argument.
  9932. Fset-face-highlight-p
  9933. Change whether the given face is highlighted (TTY locales only).
  9934. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD
  9935.   arguments.
  9936. Fface-dim-p
  9937. Return whether the given face is dimmed (TTY domains only).
  9938. See `face-property-instance' for the semantics of the DOMAIN argument.
  9939. Fset-face-dim-p
  9940. Change whether the given face is dimmed (TTY locales only).
  9941. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD
  9942.   arguments.
  9943. Fface-blinking-p
  9944. Return whether the given face is blinking (TTY domains only).
  9945. See `face-property-instance' for the semantics of the DOMAIN argument.
  9946. Fset-face-blinking-p
  9947. Change whether the given face is blinking (TTY locales only).
  9948. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD
  9949.   arguments.
  9950. Fface-reverse-p
  9951. Return whether the given face is reversed (TTY domains only).
  9952. See `face-property-instance' for the semantics of the DOMAIN argument.
  9953. Fset-face-reverse-p
  9954. Change whether the given face is reversed (TTY locales only).
  9955. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and HOW-TO-ADD
  9956.   arguments.
  9957. Fface-equal
  9958. True if the given faces will display in the the same way.
  9959. See `face-property-instance' for the semantics of the DOMAIN argument.
  9960. Fface-differs-from-default-p
  9961. True if the given face will display differently from the default face.
  9962. See `face-property-instance' for the semantics of the DOMAIN argument.
  9963. Ffrob-face-property
  9964. Change the specifier for FACE's PROPERTY according to FUNC, in LOCALE.
  9965. FUNC should be a function of two arguments (an instance and a device)
  9966. that returns a modified name that is valid for the given device.
  9967. If LOCALE specifies a valid domain (i.e. a window, frame, or device),
  9968. this function instantiates the specifier over that domain, applies FUNC
  9969. to the resulting instance, and adds the result back as an instantiator
  9970. for that locale.  Otherwise, LOCALE should be a locale, locale type, or
  9971. 'all (defaults to 'all if omitted).  For each specification thusly
  9972. included: if the locale given is a valid domain, FUNC will be
  9973. iterated over all valid instantiators for the device of the domain
  9974. until a non-nil result is found (if there is no such result, the
  9975. first valid instantiator is used), and that result substituted for
  9976. the specification; otherwise, the process just outlined is
  9977. iterated over each existing device and the concatenated results
  9978. substituted for the specification.
  9979. Fmake-face-bold
  9980. Make the face bold, if possible.
  9981. This will attempt to make the font bold for X locales and will set the
  9982. highlight flag for TTY locales.
  9983. See `face-property' for the semantics of the LOCALE argument.
  9984. Fmake-face-italic
  9985. Make the face italic, if possible.
  9986. This will attempt to make the font italic for X locales and will set
  9987. the underline flag for TTY locales.
  9988. See `face-property' for the semantics of the LOCALE argument.
  9989. Fmake-face-bold-italic
  9990. Make the face bold and italic, if possible.
  9991. This will attempt to make the font bold-italic for X locales and will
  9992. set the highlight and underline flags for TTY locales.
  9993. See `face-property' for the semantics of the LOCALE argument.
  9994. Fmake-face-unbold
  9995. Make the face non-bold, if possible.
  9996. This will attempt to make the font non-bold for X locales and will
  9997. unset the highlight flag for TTY locales.
  9998. See `face-property' for the semantics of the LOCALE argument.
  9999. Fmake-face-unitalic
  10000. Make the face non-italic, if possible.
  10001. This will attempt to make the font non-italic for X locales and will
  10002. unset the underline flag for TTY locales.
  10003. See `face-property' for the semantics of the LOCALE argument.
  10004. Fmake-face-smaller
  10005. Make the font of the given face be smaller, if possible.
  10006. See `face-property' for the semantics of the LOCALE argument.
  10007. Fmake-face-larger
  10008. Make the font of the given face be larger, if possible.
  10009. See `face-property' for the semantics of the LOCALE argument.
  10010. Finvert-face
  10011. Swap the foreground and background colors of the face.
  10012. Fface-height
  10013. Return the height of a face.
  10014. See `face-property-instance' for the semantics of the DOMAIN argument.
  10015. Finit-face-from-resources
  10016. Initialize FACE from the resource database.
  10017. If LOCALE is specified, it should be a frame, device, or 'global, and
  10018. the face will be resourced over that locale.  Otherwise, the face will
  10019. be resourced over all possible locales (i.e. all frames, all devices,
  10020. and 'global).
  10021. Fmake-font-specifier
  10022. Create a new `font' specifier object with the given specification list.
  10023. SPEC-LIST can be a list of specifications (each of which is a cons of a
  10024. locale and a list of instantiators), a single instantiator, or a list
  10025. of instantiators.  See `make-specifier' for more information about
  10026. specifiers.
  10027. Ffont-name
  10028. Return the name of the FONT in the specified DOMAIN, if any.
  10029. FONT should be a font specifier object and DOMAIN is normally a window
  10030. and defaults to the selected window if omitted.  This is equivalent
  10031. to using `specifier-instance' and applying `font-instance-name' to
  10032. the result.  See `make-specifier' for more information about specifiers.
  10033. Ffont-properties
  10034. Return the properties of the FONT in the specified DOMAIN, if any.
  10035. FONT should be a font specifier object and DOMAIN is normally a window
  10036. and defaults to the selected window if omitted.  This is equivalent
  10037. to using `specifier-instance' and applying `font-instance-properties'
  10038. to the result.  See `make-specifier' for more information about specifiers.
  10039. Ffont-truename
  10040. Return the truename of the FONT in the specified DOMAIN, if any.
  10041. FONT should be a font specifier object and DOMAIN is normally a window
  10042. and defaults to the selected window if omitted.  This is equivalent
  10043. to using `specifier-instance' and applying `font-instance-truename'
  10044. to the result.  See `make-specifier' for more information about specifiers.
  10045. Fmake-color-specifier
  10046. Create a new `color' specifier object with the given specification list.
  10047. SPEC-LIST can be a list of specifications (each of which is a cons of a
  10048. locale and a list of instantiators), a single instantiator, or a list
  10049. of instantiators.  See `make-specifier' for a detailed description of
  10050. how specifiers work.
  10051. Fcolor-name
  10052. Return the name of the COLOR in the specified DOMAIN, if any.
  10053. COLOR should be a color specifier object and DOMAIN is normally a window
  10054. and defaults to the selected window if omitted.  This is equivalent
  10055. to using `specifier-instance' and applying `color-instance-name' to
  10056. the result.  See `make-specifier' for more information about specifiers.
  10057. Fcolor-rgb-components
  10058. Return the RGB components of the COLOR in the specified DOMAIN, if any.
  10059. COLOR should be a color specifier object and DOMAIN is normally a window
  10060. and defaults to the selected window if omitted.  This is equivalent
  10061. to using `specifier-instance' and applying `color-instance-rgb-components'
  10062. to the result.  See `make-specifier' for more information about specifiers.
  10063. Fstart-process-shell-command
  10064. Start a program in a subprocess.  Return the process object for it.
  10065. Args are NAME BUFFER COMMAND &rest COMMAND-ARGS.
  10066. NAME is name for process.  It is modified if necessary to make it unique.
  10067. BUFFER is the buffer or (buffer-name) to associate with the process.
  10068.  Process output goes at end of that buffer, unless you specify
  10069.  an output stream or filter function to handle the output.
  10070.  BUFFER may be also nil, meaning that this process is not associated
  10071.  with any buffer
  10072. Third arg is command name, the name of a shell command.
  10073. Remaining arguments are the arguments for the command.
  10074. Wildcards and redirection are handled as usual in the shell.
  10075. Fcall-process
  10076. Call PROGRAM synchronously in separate process.
  10077. The program's input comes from file INFILE (nil means `/dev/null').
  10078. Insert output in BUFFER before point; t means current buffer;
  10079.  nil for BUFFER means discard it; 0 means discard and don't wait.
  10080. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted.
  10081. Remaining arguments are strings passed as command arguments to PROGRAM.
  10082. If BUFFER is 0, returns immediately with value nil.
  10083. Otherwise waits for PROGRAM to terminate
  10084. and returns a numeric exit status or a signal description string.
  10085. If you quit, the process is killed with SIGINT, or SIGKILL if you
  10086. quit again.
  10087. Fcall-process-region
  10088. Send text from START to END to a synchronous process running PROGRAM.
  10089. Delete the text if fourth arg DELETE is non-nil.
  10090. Insert output in BUFFER before point; t means current buffer;
  10091.  nil for BUFFER means discard it; 0 means discard and don't wait.
  10092. Sixth arg DISPLAY non-nil means redisplay buffer as output is inserted.
  10093. Remaining args are passed to PROGRAM at startup as command args.
  10094. If BUFFER is 0, returns immediately with value nil.
  10095. Otherwise waits for PROGRAM to terminate
  10096. and returns a numeric exit status or a signal description string.
  10097. If you quit, the process is first killed with SIGINT, then with SIGKILL if
  10098. you quit again before the process exits.
  10099. Fshell-command
  10100. Execute string COMMAND in inferior shell; display output, if any.
  10101. If COMMAND ends in ampersand, execute it asynchronously.
  10102.  
  10103. Optional second arg non-nil (prefix arg, if interactive)
  10104. means insert output in current buffer after point (leave mark after it).
  10105. This cannot be done asynchronously.
  10106. Fshell-command-on-region
  10107. Execute string COMMAND in inferior shell with region as input.
  10108. Normally display output (if any) in temp buffer `*Shell Command Output*';
  10109. Prefix arg means replace the region with it.
  10110. Noninteractive args are START, END, COMMAND, FLAG.
  10111. Noninteractively FLAG means insert output in place of text from START to END,
  10112. and put point at the end, but don't alter the mark.
  10113.  
  10114. If the output is one line, it is displayed in the echo area,
  10115. but it is nonetheless available in buffer `*Shell Command Output*'
  10116. even though that buffer is not automatically displayed.  If there is no output
  10117. or output is inserted in the current buffer then `*Shell Command Output*' is
  10118. deleted.
  10119. Fstart-process
  10120. Start a program in a subprocess.  Return the process object for it.
  10121. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS
  10122. NAME is name for process.  It is modified if necessary to make it unique.
  10123. BUFFER is the buffer or (buffer-name) to associate with the process.
  10124.  Process output goes at end of that buffer, unless you specify
  10125.  an output stream or filter function to handle the output.
  10126.  BUFFER may be also nil, meaning that this process is not associated
  10127.  with any buffer
  10128. Third arg is program file name.  It is searched for as in the shell.
  10129. Remaining arguments are strings to give program as arguments.
  10130. INCODE and OUTCODE specify the coding-system objects used in input/output
  10131.  from/to the process.
  10132. Fopen-network-stream
  10133. Open a TCP connection for a service to a host.
  10134. Returns a subprocess-object to represent the connection.
  10135. Input and output work as for subprocesses; `delete-process' closes it.
  10136. Args are NAME BUFFER HOST SERVICE.
  10137. NAME is name for process.  It is modified if necessary to make it unique.
  10138. BUFFER is the buffer (or buffer-name) to associate with the process.
  10139.  Process output goes at end of that buffer, unless you specify
  10140.  an output stream or filter function to handle the output.
  10141.  BUFFER may be also nil, meaning that this process is not associated
  10142.  with any buffer
  10143. Third arg is name of the host to connect to, or its IP address.
  10144. Fourth arg SERVICE is name of the service desired, or an integer
  10145.  specifying a port number to connect to.
  10146. Fshell-quote-argument
  10147. Quote an argument for passing as argument to an inferior shell.
  10148. Fexec-to-string
  10149. Execute COMMAND as an external process and return the output of that
  10150. process as a string
  10151. Vglobal-map
  10152. Default global keymap mapping XEmacs keyboard input into commands.
  10153. The value is a keymap which is usually (but not necessarily) XEmacs's
  10154. global map.
  10155. Vesc-map
  10156. Default keymap for ESC (meta) commands.
  10157. The normal global definition of the character ESC indirects to this keymap.
  10158. Vctl-x-map
  10159. Default keymap for C-x commands.
  10160. The normal global definition of the character C-x indirects to this keymap.
  10161. Vctl-x-4-map
  10162. Keymap for subcommands of C-x 4
  10163. Vctl-x-5-map
  10164. Keymap for subcommands of C-x 5
  10165. Vmode-specific-map
  10166. Keymap for characters following C-c.
  10167. Fquit-char
  10168. Return the character that causes a QUIT to happen.
  10169. This is normally C-g.  Optional arg DEVICE specifies the device
  10170. that the information is returned for; nil means the current device.
  10171. Fmake-tty-device
  10172. Create a new device on TTY.
  10173.   TTY should be the name of a tty device file (e.g. "/dev/ttyp3" under
  10174. SunOS et al.), as returned by the `tty' command.  A value of nil means
  10175. use the stdin and stdout as passed to XEmacs from the shell.
  10176.   If TERMINAL-TYPE is non-nil, it should be a string specifying the
  10177. type of the terminal attached to the specified tty.  If it is nil,
  10178. the terminal type will be inferred from the TERM environment variable.
  10179. Fmake-x-device
  10180. Create a new device connected to DISPLAY.
  10181. Optional argument ARGV-LIST is a list of strings describing command line
  10182. options.
  10183. Fdefine-obsolete-function-alias
  10184. Define OLDFUN as an obsolete alias for function NEWFUN.
  10185. This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
  10186. as obsolete.
  10187. Fdefine-obsolete-variable-alias
  10188. Define OLDVAR as an obsolete alias for varction NEWVAR.
  10189. This makes referencing or setting OLDVAR equivalent to referencing or
  10190. setting NEWVAR and marks OLDVAR as obsolete.
  10191. Fextent-data
  10192. Obsolete.  Returns the `data' property of the given extent.
  10193. Fset-extent-data
  10194. Obsolete.  Sets the `data' property of the given extent.
  10195. Fset-extent-attribute
  10196.  
  10197. Fextent-glyph
  10198.  
  10199. Fextent-layout
  10200.  
  10201. Fset-extent-layout
  10202.  
  10203. Fx-create-screen
  10204.  
  10205. Fframe-first-window
  10206. Returns the topmost, leftmost window of FRAME.
  10207. If omitted, FRAME defaults to the currently selected frame.
  10208. Fx-display-color-p
  10209. Returns non-nil if DEVICE is a color device.
  10210. Fx-display-grayscale-p
  10211. Returns non-nil if DEVICE is a grayscale device.
  10212. Vafter-write-file-hooks
  10213.  
  10214. Fkeymap-parent
  10215. Returns the first parent of the given keymap.
  10216. Fset-keymap-parent
  10217. Makes the given keymap have (only) the given parent.
  10218. Fadd-menu-item
  10219. Obsolete.  See the function `add-menu-button'.
  10220. Fadd-menu
  10221. Obsolete.  See the function `add-submenu'.
  10222. Fmake-pixmap
  10223. Create a glyph with NAME as a pixmap specifier and locale LOCALE.
  10224. The file should be in `XBM' or `XPM' format.
  10225. If the XBMLANGPATH environment variable is set, it will be searched for
  10226.  matching files.  Next, the directories listed in the `x-bitmap-file-path'
  10227.  variable will be searched (this variable is initialized from the
  10228.  "*bitmapFilePath" resource).  Finally, the XEmacs etc/ directory
  10229.  (the value of `data-directory') will be searched.
  10230. The file argument may also be a list of the form (width height data) where
  10231.  width and height are the size in pixels, and data is a string, containing
  10232.  the raw bits of the bitmap.  (Bitmaps specified this way can only be one bit
  10233.  deep.)
  10234. If compiled with support for XPM, the file argument may also be a string
  10235.  which is the contents of an XPM file (that is, a string beginning with the
  10236.  characters "/* XPM */"; see the XPM documentation).
  10237. The optional second argument is the specifier locale for this pixmap glyph.
  10238. The returned object is a glyph object.  To get the actual pixmap object for
  10239. a given frame, use the function `glyph-instance'.
  10240. Fmake-image-specifier
  10241. Create a new `image' specifier object with the given specification list.
  10242. SPEC-LIST can be a list of specifications (each of which is a cons of a
  10243. locale and a list of instantiators), a single instantiator, or a list
  10244. of instantiators.  See `make-specifier' for more information about
  10245. specifiers.
  10246. Vbuilt-in-glyph-specifiers
  10247. A list of the built-in face properties that are specifiers.
  10248. Fglyph-property
  10249. Return GLYPH's value of the given PROPERTY.
  10250.  
  10251. If LOCALE is omitted, the GLYPH's actual value for PROPERTY will be
  10252.   returned.  For built-in properties, this will be a specifier object
  10253.   of a type appropriate to the property (e.g. a font or color
  10254.   specifier).  For other properties, this could be anything.
  10255.  
  10256. If LOCALE is supplied, then instead of returning the actual value,
  10257.   the specification(s) for the given locale or locale type will
  10258.   be returned.  This will only work if the actual value of
  10259.   PROPERTY is a specifier (this will always be the case for built-in
  10260.   properties, but not or not may apply to user-defined properties).
  10261.   If the actual value of PROPERTY is not a specifier, this value
  10262.   will simply be returned regardless of LOCALE.
  10263.  
  10264. The return value will be a list of instantiators (e.g. strings
  10265.   specifying a font or color name), or a list of specifications, each
  10266.   of which is a cons of a locale and a list of instantiators.
  10267.   Specifically, if LOCALE is a particular locale (a buffer, window,
  10268.   frame, device, or 'global), a list of instantiators for that locale
  10269.   will be returned.  Otherwise, if LOCALE is a locale type (one of
  10270.   the symbols 'buffer, 'window, 'frame, 'device, 'device-class, or
  10271.   'device-type), the specifications for all locales of that type will
  10272.   be returned.  Finally, if LOCALE is 'all, the specifications for all
  10273.   locales of all types will be returned.
  10274.  
  10275. The specifications in a specifier determine what the value of
  10276.   PROPERTY will be in a particular "domain" or set of circumstances,
  10277.   which is typically a particular Emacs window along with the buffer
  10278.   it contains and the frame and device it lies within.  The value
  10279.   is derived from the instantiator associated with the most specific
  10280.   locale (in the order buffer, window, frame, device, and 'global)
  10281.   that matches the domain in question.  In other words, given a domain
  10282.   (i.e. an Emacs window, usually), the specifier for PROPERTY will first
  10283.   be searched for a specification whose locale is the buffer contained
  10284.   within that window; then for a specification whose locale is the window
  10285.   itself; then for a specification whose locale is the frame that the
  10286.   window is contained within; etc.  The first instantiator that is
  10287.   valid for the domain (usually this means that the instantiator is
  10288.   recognized by the device [i.e. the X server or TTY device] that the
  10289.   domain is on.  The function `glyph-property-instance' actually does
  10290.   all this, and is used to determine how to display the glyph.
  10291.  
  10292. See `set-glyph-property' for the built-in property-names.
  10293. Fconvert-glyph-property-into-specifier
  10294. Convert PROPERTY on GLYPH into a specifier, if it's not already.
  10295. Fglyph-property-instance
  10296. Return the instance of GLYPH's PROPERTY in the specified DOMAIN.
  10297.  
  10298. Under most circumstances, DOMAIN will be a particular window,
  10299.   and the returned instance describes how the specified property
  10300.   actually is displayed for that window and the particular buffer
  10301.   in it.  Note that this may not be the same as how the property
  10302.   appears when the buffer is displayed in a different window or
  10303.   frame, or how the property appears in the same window if you
  10304.   switch to another buffer in that window; and in those cases,
  10305.   the returned instance would be different.
  10306.  
  10307. The returned instance will typically be a color-instance,
  10308.   font-instance, or pixmap-instance object, and you can query
  10309.   it using the appropriate object-specific functions.  For example,
  10310.   you could use `color-instance-rgb-components' to find out the
  10311.   RGB (red, green, and blue) components of how the 'background
  10312.   property of the 'highlight glyph is displayed in a particular
  10313.   window.  The results might be different from the results
  10314.   you would get for another window (perhaps the user
  10315.   specified a different color for the frame that window is on;
  10316.   or perhaps the same color was specified but the window is
  10317.   on a different X server, and that X server has different RGB
  10318.   values for the color from this one).
  10319.  
  10320. DOMAIN defaults to the selected window if omitted.
  10321.  
  10322. DOMAIN can be a frame or device, instead of a window.  The value
  10323.   returned for a such a domain is used in special circumstances
  10324.   when a more specific domain does not apply; for example, a frame
  10325.   value might be used for coloring a toolbar, which is conceptually
  10326.   attached to a frame rather than a particular window.  The value
  10327.   is also useful in determining what the value would be for a
  10328.   particular window within the frame or device, if it is not
  10329.   overridden by a more specific specification.
  10330.  
  10331. If PROPERTY does not name a built-in property, its value will
  10332.   simply be returned unless it is a specifier object, in which case
  10333.   it will be instanced using `specifier-instance'.
  10334.  
  10335. Optional arguments DEFAULT and NO-FALLBACK are the same as in
  10336.   `specifier-instance'.
  10337. Fset-glyph-property
  10338. Change a property of a GLYPH.
  10339.  
  10340. NOTE: If you want to remove a property from a glyph, use `remove-glyph-property'
  10341.   rather than attempting to set a value of nil for the property.
  10342.  
  10343. For built-in properties, the actual value of the property is a
  10344.   specifier and you cannot change this; but you can change the
  10345.   specifications within the specifier, and that is what this function
  10346.   will do.  For user-defined properties, you can use this function
  10347.   to either change the actual value of the property or, if this value
  10348.   is a specifier, change the specifications within it.
  10349.  
  10350. If PROPERTY is a built-in property, the specifications to be added to
  10351.   this property can be supplied in many different ways:
  10352.  
  10353.   -- If VALUE is a simple instantiator (e.g. a string naming a font or
  10354.      color) or a list of instantiators, then the instantiator(s) will
  10355.      be added as a specification of the property for the given LOCALE
  10356.      (which defaults to 'global if omitted).
  10357.   -- If VALUE is a list of specifications (each of which is a cons of
  10358.      a locale and a list of instantiators), then LOCALE must be nil
  10359.      (it does not make sense to explicitly specify a locale in this
  10360.      case), and specifications will be added as given.
  10361.   -- If VALUE is a specifier (as would be returned by `glyph-property'
  10362.      if no LOCALE argument is given), then some or all of the
  10363.      specifications in the specifier will be added to the property.
  10364.      In this case, the function is really equivalent to
  10365.      `copy-specifier' and LOCALE has the same semantics (if it is
  10366.      a particular locale, the specification for the locale will be
  10367.      copied; if a locale type, specifications for all locales of
  10368.      that type will be copied; if nil or 'all, then all
  10369.      specifications will be copied).
  10370.  
  10371. HOW-TO-ADD should be either nil or one of the symbols 'prepend,
  10372.   'append, 'remove-tag-set-prepend, 'remove-tag-set-append, 'remove-locale,
  10373.   'remove-locale-type, or 'remove-all.  See `copy-specifier' and
  10374.   `add-spec-to-specifier' for a description of what each of
  10375.   these means.  Most of the time, you do not need to worry about
  10376.   this argument; the default behavior usually is fine.
  10377.  
  10378. In general, it is OK to pass an instance object (e.g. as returned
  10379.   by `glyph-property-instance') as an instantiator in place of
  10380.   an actual instantiator.  In such a case, the instantiator used
  10381.   to create that instance object will be used (for example, if
  10382.   you set a font-instance object as the value of the 'font
  10383.   property, then the font name used to create that object will
  10384.   be used instead).  If some cases, however, doing this
  10385.   conversion does not make sense, and this will be noted in
  10386.   the documentation for particular types of instance objects.
  10387.  
  10388. If PROPERTY is not a built-in property, then this function will
  10389.   simply set its value if LOCALE is nil.  However, if LOCALE is
  10390.   given, then this function will attempt to add VALUE as the
  10391.   instantiator for the given LOCALE, using `add-spec-to-specifier'.
  10392.   If the value of the property is not a specifier, it will
  10393.   automatically be converted into a 'generic specifier.
  10394.  
  10395.  
  10396. The following symbols have predefined meanings:
  10397.  
  10398.  image            The image used to display the glyph.
  10399.  
  10400.  baseline        Percent above baseline that glyph is to be
  10401.             displayed.
  10402.  
  10403.  contrib-p        Whether the glyph contributes to the
  10404.             height of the line it's on.
  10405.  
  10406.  face            Face of this glyph (*not* a specifier).
  10407. Fremove-glyph-property
  10408. Remove a property from a glyph.
  10409. For built-in properties, this is analogous to `remove-specifier'.
  10410. See `remove-specifier' for the meaning of the LOCALE, TAG-SET, and EXACT-P arguments.
  10411. Fglyph-face
  10412. Return the face of GLYPH.
  10413. Fset-glyph-face
  10414. Change the face of GLYPH to FACE.
  10415. Fglyph-image
  10416. Return the image of the given glyph, or nil if it is unspecified.
  10417.  
  10418. LOCALE may be a locale (the instantiators for that particular locale
  10419.   will be returned), a locale type (the specifications for all locales
  10420.   of that type will be returned), 'all (all specifications will be
  10421.   returned), or nil (the actual specifier object will be returned).
  10422.  
  10423. See `glyph-property' for more information.
  10424. Fglyph-image-instance
  10425. Return the instance of the given glyph's image in the given domain.
  10426.  
  10427. Normally DOMAIN will be a window or nil (meaning the selected window),
  10428.   and an instance object describing how the image appears in that
  10429.   particular window and buffer will be returned.
  10430.  
  10431. See `glyph-property-instance' for more information.
  10432. Fset-glyph-image
  10433. Change the image of the given glyph.
  10434.  
  10435. SPEC should be an instantiator (a string or vector; see
  10436.   `image-specifier-p' for a description of possible values here),
  10437.   a list of (possibly tagged) instantiators, an alist of specifications
  10438.   (each mapping a locale to an instantiator list), or an image specifier
  10439.   object.
  10440.  
  10441. If SPEC is an alist, LOCALE must be omitted.  If SPEC is a
  10442.   specifier object, LOCALE can be a locale, a locale type, 'all,
  10443.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  10444.   specifies the locale under which the specified instantiator(s)
  10445.   will be added, and defaults to 'global.
  10446.  
  10447. See `set-glyph-property' for more information.
  10448. Fglyph-contrib-p
  10449. Return whether GLYPH contributes to its line height.
  10450.  
  10451. LOCALE may be a locale (the instantiators for that particular locale
  10452.   will be returned), a locale type (the specifications for all locales
  10453.   of that type will be returned), 'all (all specifications will be
  10454.   returned), or nil (the actual specifier object will be returned).
  10455.  
  10456. See `glyph-property' for more information.
  10457. Fglyph-contrib-p-instance
  10458. Return the instance of the GLYPH's 'contrib-p property in the given domain.
  10459.  
  10460. Normally DOMAIN will be a window or nil (meaning the selected window),
  10461.   and an instance object describing what the 'contrib-p property is in
  10462.   that particular window and buffer will be returned.
  10463.  
  10464. See `glyph-property-instance' for more information.
  10465. Fset-glyph-contrib-p
  10466. Change the contrib-p of the given glyph.
  10467.  
  10468. SPEC should be an instantiator (t or nil), a list of (possibly
  10469.   tagged) instantiators, an alist of specifications (each mapping a
  10470.   locale to an instantiator list), or a boolean specifier object.
  10471.  
  10472. If SPEC is an alist, LOCALE must be omitted.  If SPEC is a
  10473.   specifier object, LOCALE can be a locale, a locale type, 'all,
  10474.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  10475.   specifies the locale under which the specified instantiator(s)
  10476.   will be added, and defaults to 'global.
  10477.  
  10478. See `set-glyph-property' for more information.
  10479. Fglyph-baseline
  10480. Return the baseline of the given glyph, or nil if it is unspecified.
  10481.  
  10482. LOCALE may be a locale (the instantiators for that particular locale
  10483.   will be returned), a locale type (the specifications for all locales
  10484.   of that type will be returned), 'all (all specifications will be
  10485.   returned), or nil (the actual specifier object will be returned).
  10486.  
  10487. See `glyph-property' for more information.
  10488. Fglyph-baseline-instance
  10489. Return the instance of the given glyph's baseline in the given domain.
  10490.  
  10491. Normally DOMAIN will be a window or nil (meaning the selected window),
  10492.   and an integer or nil (specifying the baseline in that particular
  10493.   window and buffer) will be returned.
  10494.  
  10495. See `glyph-property-instance' for more information.
  10496. Fset-glyph-baseline
  10497. Change the baseline of the given glyph.
  10498.  
  10499. SPEC should be an instantiator (an integer [a percentage above the
  10500.   baseline of the line the glyph is on] or nil), a list of (possibly
  10501.   tagged) instantiators, an alist of specifications (each mapping a
  10502.   locale to an instantiator list), or a generic specifier object.
  10503.  
  10504. If SPEC is an alist, LOCALE must be omitted.  If SPEC is a
  10505.   specifier object, LOCALE can be a locale, a locale type, 'all,
  10506.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  10507.   specifies the locale under which the specified instantiator(s)
  10508.   will be added, and defaults to 'global.
  10509.  
  10510. See `set-glyph-property' for more information.
  10511. Fmake-glyph
  10512. Create a new `glyph' object with the given specification list.
  10513. SPEC-LIST can be a list of specifications (each of which is a cons of a
  10514. locale and a list of inst-pairs, each of which is a cons of a tag-set and
  10515. an instantiator), a single instantiator, a list of instantiators, or
  10516. almost any other reasonable form (specifically anything accepted by
  10517. `canonicalize-spec-list').  SPEC-LIST is used to initialize the
  10518. glyph's 'image property, which is a specifier.  See `make-specifier'
  10519. for more information about specifiers.
  10520. Fmapcar-extents
  10521. Applies FUNCTION to all extents which overlap a region in BUFFER.
  10522. The region is is delimited by FROM and TO.  A list of the values returned
  10523. by FUNCTION is returned.  An optional PREDICATE may be used to further
  10524. limit the extents over which FUNCTION is mapped.  The optional arguments
  10525. FLAGS, PROPERTY, and VALUE may also be used to control the extents passed
  10526. to PREDICATE or FUNCTION.  See also `map-extents'.
  10527. Fextent-string
  10528. Return the string delimited by the bounds of EXTENT.
  10529. Fbackquote
  10530. Expand the internal representation of a backquoted TEMPLATE into a lisp form.
  10531.  
  10532. The backquote character is like the quote character in that it prevents the
  10533. template which follows it from being evaluated, except that backquote
  10534. permits you to evaluate portions of the quoted template.  A comma character
  10535. inside TEMPLATE indicates that the following item should be evaluated.  A
  10536. comma character may be followed by an at-sign, which indicates that the form
  10537. which follows should be evaluated and inserted and "spliced" into the
  10538. template.  Forms following ,@ must evaluate to lists.
  10539.  
  10540. Here is how to use backquotes:
  10541.   (setq p 'b
  10542.         q '(c d e))
  10543.   `(a ,p ,@q)   -> (a b c d e)
  10544.   `(a . b)      -> (a . b)
  10545.   `(a . ,p)     -> (a . b)
  10546.  
  10547. The XEmacs lisp reader expands lisp backquotes as it reads them.
  10548. Examples:
  10549.   `atom             is read as (backquote atom)
  10550.   `(a ,b ,@(c d e)) is read as (backquote (a (\, b) (\,\@ (c d e))))
  10551.   `(a . ,p)         is read as (backquote (a \, p))
  10552.  
  10553. (backquote TEMPLATE) is a macro that produces code to construct TEMPLATE.
  10554. Note that this is very slow in interpreted code, but fast if you compile.
  10555. TEMPLATE is one or more nested lists or vectors, which are `almost quoted'.
  10556. They are copied recursively, with elements preceded by comma evaluated.
  10557.  (backquote (a b))     == (list 'a 'b)  
  10558.  (backquote (a [b c])) == (list 'a (vector 'b 'c)) 
  10559.  
  10560. However, certain special lists are not copied.  They specify substitution.
  10561. Lists that look like (\, EXP) are evaluated and the result is substituted.
  10562.  (backquote (a (\, (+ x 5)))) == (list 'a (+ x 5))
  10563.  
  10564. Elements of the form (\,\@ EXP) are evaluated and then all the elements
  10565. of the result are substituted.  This result must be a list; it may
  10566. be `nil'.
  10567.  
  10568. Elements of the form (\,\. EXP) are evaluated and then all the elements
  10569. of the result are concatenated to the list of preceding elements in the list.
  10570. They must occur as the last element of a list (not a vector).
  10571. EXP may evaluate to nil.
  10572.  
  10573. As an example, a simple macro `push' could be written:
  10574.    (defmacro push (v l)
  10575.      `(setq ,l (cons ,@(list v l))))
  10576. or as
  10577.    (defmacro push (v l)
  10578.      `(setq ,l (cons ,v ,l)))
  10579.  
  10580. For backwards compatibility, old-style emacs-lisp backquotes are still read.
  10581.      OLD STYLE                        NEW STYLE
  10582.      (` (foo (, bar) (,@ bing)))      `(foo ,bar ,@bing)
  10583.  
  10584. Because of the old-style backquote support, you cannot use a new-style
  10585. backquoted form as the first element of a list.  Perhaps some day this
  10586. restriction will go away, but for now you should be wary of it:
  10587.     (`(this ,will ,@fail))
  10588.     ((` (but (, this) will (,@ work))))
  10589. This is an extremely rare thing to need to do in lisp.
  10590. Fbq-list*
  10591. Returns a list of its arguments with last cons a dotted pair.
  10592. Fopen-line
  10593. Insert a newline and leave point before it.
  10594. With arg N, insert N newlines.
  10595. Fsplit-line
  10596. Split current line, moving portion beyond point vertically down.
  10597. Fquoted-insert
  10598. Read next input character and insert it.
  10599. This is useful for inserting control characters.
  10600. You may also type up to 3 octal digits, to insert a character with that code.
  10601.  
  10602. In overwrite mode, this function inserts the character anyway, and
  10603. does not handle octal digits specially.  This means that if you use
  10604. overwrite as your normal editing mode, you can use this function to
  10605. insert characters when necessary.
  10606.  
  10607. In binary overwrite mode, this function does overwrite, and octal
  10608. digits are interpreted as a character code.  This is supposed to make
  10609. this function useful in editing binary files.
  10610. Fdelete-indentation
  10611. Join this line to previous and fix up whitespace at join.
  10612. If there is a fill prefix, delete it from the beginning of this line.
  10613. With argument, join this line to following line.
  10614. Ffixup-whitespace
  10615. Fixup white space between objects around point.
  10616. Leave one space or none, according to the context.
  10617. Fdelete-horizontal-space
  10618. Delete all spaces and tabs around point.
  10619. Fjust-one-space
  10620. Delete all spaces and tabs around point, leaving one space.
  10621. Fdelete-blank-lines
  10622. On blank line, delete all surrounding blank lines, leaving just one.
  10623. On isolated blank line, delete that one.
  10624. On nonblank line, delete any immediately following blank lines.
  10625. Fback-to-indentation
  10626. Move point to the first non-whitespace character on this line.
  10627. Fnewline-and-indent
  10628. Insert a newline, then indent according to major mode.
  10629. Indentation is done using the value of `indent-line-function'.
  10630. In programming language modes, this is the same as TAB.
  10631. In some text modes, where TAB inserts a tab, this command indents to the
  10632. column specified by the variable `left-margin'.
  10633. Freindent-then-newline-and-indent
  10634. Reindent current line, insert newline, then indent the new line.
  10635. Indentation of both lines is done according to the current major mode,
  10636. which means calling the current value of `indent-line-function'.
  10637. In programming language modes, this is the same as TAB.
  10638. In some text modes, where TAB inserts a tab, this indents to the
  10639. column specified by the variable `left-margin'.
  10640. Fbackward-delete-char-untabify
  10641. Delete characters backward, changing tabs into spaces.
  10642. Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil.
  10643. Interactively, ARG is the prefix arg (default 1)
  10644. and KILLP is t if a prefix arg was specified.
  10645. Fzap-to-char
  10646. Kill up to and including ARG'th occurrence of CHAR.
  10647. Goes backward if ARG is negative; error if CHAR not found.
  10648. Fbeginning-of-buffer
  10649. Move point to the beginning of the buffer; leave mark at previous position.
  10650. With arg N, put point N/10 of the way from the true beginning.
  10651.  
  10652. Don't use this command in Lisp programs!
  10653. (goto-char (point-min)) is faster and avoids clobbering the mark.
  10654. Fend-of-buffer
  10655. Move point to the end of the buffer; leave mark at previous position.
  10656. With arg N, put point N/10 of the way from the true end.
  10657.  
  10658. Don't use this command in Lisp programs!
  10659. (goto-char (point-max)) is faster and avoids clobbering the mark.
  10660. Fmark-beginning-of-buffer
  10661. Push a mark at the beginning of the buffer; leave point where it is.
  10662. With arg N, push mark N/10 of the way from the true beginning.
  10663. Fmark-end-of-buffer
  10664. Push a mark at the end of the buffer; leave point where it is.
  10665. With arg N, push mark N/10 of the way from the true end.
  10666. Fmark-whole-buffer
  10667. Put point at beginning and mark at end of buffer.
  10668. You probably should not use this function in Lisp programs;
  10669. it is usually a mistake for a Lisp function to use any subroutine
  10670. that uses or sets the mark.
  10671. Feval-current-buffer
  10672. Evaluate the current buffer as Lisp code.
  10673. Programs can pass argument PRINTFLAG which controls printing of output:
  10674. nil means discard it; anything else is stream for print.
  10675. Fcount-lines-region
  10676. Print number of lines and characters in the region.
  10677. Fcount-lines-buffer
  10678. Print number of lines and charcters in the specified buffer.
  10679. Fwhat-line
  10680. Print the current line number (in the buffer) of point.
  10681. Fcount-lines
  10682. Return number of lines between START and END.
  10683. This is usually the number of newlines between them,
  10684. but can be one more if START is not equal to END
  10685. and the greater of them is not at the start of a line.
  10686. Fwhat-cursor-position
  10687. Print info on cursor position (on screen and within buffer).
  10688. Ffundamental-mode
  10689. Major mode not specialized for anything in particular.
  10690. Other major modes are defined by comparison with this one.
  10691. Feval-expression
  10692. Evaluate EXPRESSION and print value in minibuffer.
  10693. Value is also consed on to front of the variable `values'.
  10694. Fedit-and-eval-command
  10695. Prompting with PROMPT, let user edit COMMAND and eval result.
  10696. COMMAND is a Lisp expression.  Let user edit that expression in
  10697. the minibuffer, then read and evaluate the result.
  10698. Frepeat-complex-command
  10699. Edit and re-evaluate last complex command, or ARGth from last.
  10700. A complex command is one which used the minibuffer.
  10701. The command is placed in the minibuffer as a Lisp form for editing.
  10702. The result is executed, repeating the command as changed.
  10703. If the command has been changed or is not the most recent previous command
  10704. it is added to the front of the command history.
  10705. You can use the minibuffer history commands \<minibuffer-local-map>\[next-history-element] and \[previous-history-element]
  10706. to get different commands to edit and resubmit.
  10707. Fgoto-line
  10708. Goto line ARG, counting from line 1 at beginning of buffer.
  10709. Fundo
  10710. Undo some previous changes.
  10711. Repeat this command to undo more changes.
  10712. A numeric argument serves as a repeat count.
  10713. Vpending-undo-list
  10714. Within a run of consecutive undo commands, list remaining to be undone.
  10715. Fundo-start
  10716. Set `pending-undo-list' to the front of the undo list.
  10717. The next call to `undo-more' will undo the most recently made change.
  10718. Fundo-more
  10719. Undo back N undo-boundaries beyond what was already undone recently.
  10720. Call `undo-start' to get ready to undo recent changes,
  10721. then call `undo-more' one or more times to undo them.
  10722. Fcall-with-transparent-undo
  10723. Apply FN to ARGS, and then undo all changes made by FN to the current
  10724. buffer.  The undo records are processed even if FN returns non-locally.
  10725. There is no trace of the changes made by FN in the buffer's undo history.
  10726.  
  10727. You can use this in a write-file-hooks function with continue-save-buffer
  10728. to make the contents of a disk file differ from its in-memory buffer.
  10729. Funiversal-argument
  10730. Begin a numeric argument for the following command.
  10731. Digits or minus sign following \[universal-argument] make up the numeric argument.
  10732. \[universal-argument] following the digits or minus sign ends the argument.
  10733. \[universal-argument] without digits or minus sign provides 4 as argument.
  10734. Repeating \[universal-argument] without digits or minus sign
  10735.  multiplies the argument by 4 each time.
  10736. Fdigit-argument
  10737. Part of the numeric argument for the next command.
  10738. \[universal-argument] following digits or minus sign ends the argument.
  10739. Fnegative-argument
  10740. Begin a negative numeric argument for the next command.
  10741. \[universal-argument] following digits or minus sign ends the argument.
  10742. Fforward-to-indentation
  10743. Move forward ARG lines and position at first nonblank character.
  10744. Fbackward-to-indentation
  10745. Move backward ARG lines and position at first nonblank character.
  10746. Vkill-whole-line
  10747. *If non-nil, `kill-line' with no arg at beg of line kills the whole line.
  10748. Fkill-line
  10749. Kill the rest of the current line; if no nonblanks there, kill thru newline.
  10750. With prefix argument, kill that many lines from point.
  10751. Negative arguments kill lines backward.
  10752.  
  10753. When calling from a program, nil means "no arg",
  10754. a number counts as a prefix arg.
  10755.  
  10756. If `kill-whole-line' is non-nil, then kill the whole line
  10757. when given no argument at the beginning of a line.
  10758. Fbackward-kill-line
  10759. Kill back to the beginning of the line.
  10760. Vkill-hooks
  10761. Functions run when something is added to the XEmacs kill ring.
  10762. These functions are called with one argument, the string most recently
  10763. cut or copied.  You can use this to, for example, make the most recent 
  10764. kill become the X Clipboard selection.
  10765. Vkill-ring
  10766. List of killed text sequences.
  10767. In order to maintain correct interaction with cut-and-paste facilities 
  10768. offered by window systems, the functions `kill-new', `kill-append', and
  10769. `current-kill' should be used to access the kill ring, instead of using
  10770. this variable directly.
  10771. Vkill-ring-max
  10772. *Maximum length of kill ring before oldest elements are thrown away.
  10773. Vkill-ring-yank-pointer
  10774. The tail of the kill ring whose car is the last thing yanked.
  10775. Fkill-new
  10776. Make STRING the latest kill in the kill ring.
  10777. Set the kill-ring-yank pointer to point to it.
  10778. Runs `kill-hooks'.
  10779. Fkill-append
  10780. Append STRING to the end of the latest kill in the kill ring.
  10781. If BEFORE-P is non-nil, prepend STRING to the kill.
  10782. Runs `kill-hooks'.
  10783. Fcurrent-kill
  10784. Rotate the yanking point by N places, and then return that kill.
  10785. If optional arg DO-NOT-MOVE is non-nil, then don't actually move the 
  10786. yanking point; just return the Nth kill forward.
  10787. Fkill-region
  10788. Kill between point and mark.
  10789. The text is deleted but saved in the kill ring.
  10790. The command \[yank] can retrieve it from there.
  10791. (If you want to kill and then yank immediately, use \[copy-region-as-kill].)
  10792.  
  10793. This is the primitive for programs to kill text (as opposed to deleting it).
  10794. Supply two arguments, character numbers indicating the stretch of text
  10795.  to be killed.
  10796. Any command that calls this function is a "kill command".
  10797. If the previous command was also a kill command,
  10798. the text killed this time appends to the text killed last time
  10799. to make one entry in the kill ring.
  10800. Fcopy-region-as-kill
  10801. Save the region as if killed, but don't kill it.
  10802. Runs `kill-hooks'.
  10803. Fkill-ring-save
  10804. Save the region as if killed, but don't kill it.
  10805. This command is similar to `copy-region-as-kill', except that it gives
  10806. visual feedback indicating the extent of the region being copied.
  10807. Fappend-next-kill
  10808. Cause following command, if it kills, to append to previous kill.
  10809. Fyank-pop
  10810. Replace just-yanked stretch of killed text with a different stretch.
  10811. This command is allowed only immediately after a `yank' or a `yank-pop'.
  10812. At such a time, the region contains a stretch of reinserted
  10813. previously-killed text.  `yank-pop' deletes that text and inserts in its
  10814. place a different stretch of killed text.
  10815.  
  10816. With no argument, the previous kill is inserted.
  10817. With argument N, insert the Nth previous kill.
  10818. If N is negative, this is a more recent kill.
  10819.  
  10820. The sequence of kills wraps around, so that after the oldest one
  10821. comes the newest one.
  10822. Fyank
  10823. Reinsert the last stretch of killed text.
  10824. More precisely, reinsert the stretch of killed text most recently
  10825. killed OR yanked.  Put point at end, and set mark at beginning.
  10826. With just C-u as argument, same but put point at beginning (and mark at end).
  10827. With argument N, reinsert the Nth most recently killed stretch of killed text.
  10828. See also the command \[yank-pop].
  10829. Frotate-yank-pointer
  10830. Rotate the yanking point in the kill ring.
  10831. With argument, rotate that many kills forward (or backward, if negative).
  10832. Finsert-buffer
  10833. Insert after point the contents of BUFFER.
  10834. Puts mark after the inserted text.
  10835. BUFFER may be a buffer or a buffer name.
  10836. Fappend-to-buffer
  10837. Append to specified buffer the text of the region.
  10838. It is inserted into that buffer before its point.
  10839.  
  10840. When calling from a program, give three arguments:
  10841. BUFFER (or buffer name), START and END.
  10842. START and END specify the portion of the current buffer to be copied.
  10843. Fprepend-to-buffer
  10844. Prepend to specified buffer the text of the region.
  10845. It is inserted into that buffer after its point.
  10846.  
  10847. When calling from a program, give three arguments:
  10848. BUFFER (or buffer name), START and END.
  10849. START and END specify the portion of the current buffer to be copied.
  10850. Fcopy-to-buffer
  10851. Copy to specified buffer the text of the region.
  10852. It is inserted into that buffer, replacing existing text there.
  10853.  
  10854. When calling from a program, give three arguments:
  10855. BUFFER (or buffer name), START and END.
  10856. START and END specify the portion of the current buffer to be copied.
  10857. Fmark
  10858. Return this buffer's mark value as integer, or nil if no mark.
  10859.  
  10860. If `zmacs-regions' is true, then this returns nil unless the region is
  10861. currently in the active (highlighted) state.  With an argument of t, this
  10862. returns the mark (if there is one) regardless of the active-region state.
  10863. You should *generally* not use the mark unless the region is active, if
  10864. the user has expressed a preference for the active-region model.
  10865.  
  10866. If you are using this in an editing command, you are most likely making
  10867. a mistake; see the documentation of `set-mark'.
  10868. Fset-mark
  10869. Set this buffer's mark to POS.  Don't use this function!
  10870. That is to say, don't use this function unless you want
  10871. the user to see that the mark has moved, and you want the previous
  10872. mark position to be lost.
  10873.  
  10874. Normally, when a new mark is set, the old one should go on the stack.
  10875. This is why most applications should use push-mark, not set-mark.
  10876.  
  10877. Novice Emacs Lisp programmers often try to use the mark for the wrong
  10878. purposes.  The mark saves a location for the user's convenience.
  10879. Most editing commands should not alter the mark.
  10880. To remember a location for internal use in the Lisp program,
  10881. store it in a Lisp variable.  Example:
  10882.  
  10883.    (let ((beg (point))) (forward-line 1) (delete-region beg (point))).
  10884. Vmark-ring
  10885. The list of former marks of the current buffer, most recent first.
  10886. Vmark-ring-max
  10887. *Maximum size of mark ring.  Start discarding off end if gets this big.
  10888. Vglobal-mark-ring
  10889. The list of saved global marks, most recent first.
  10890. Vglobal-mark-ring-max
  10891. *Maximum size of global mark ring.  Start discarding off end if gets this big.
  10892. Fset-mark-command
  10893. Set mark at where point is, or jump to mark.
  10894. With no prefix argument, set mark,  push old mark position on local mark
  10895. ring, and push mark on global mark ring.
  10896. With argument, jump to mark, and pop a new position for mark off the ring
  10897. (does not affect global mark ring).
  10898.  
  10899. Novice Emacs Lisp programmers often try to use the mark for the wrong
  10900. purposes.  See the documentation of `set-mark' for more information.
  10901. Fpush-mark
  10902. Set mark at LOCATION (point, by default) and push old mark on mark ring.
  10903. If the last global mark pushed was not in the current buffer,
  10904. also push LOCATION on the global mark ring.
  10905. Display `Mark set' unless the optional second arg NOMSG is non-nil.
  10906. Activate mark if optional third arg ACTIVATE-REGION non-nil.
  10907.  
  10908. Novice Emacs Lisp programmers often try to use the mark for the wrong
  10909. purposes.  See the documentation of `set-mark' for more information.
  10910. Fpop-mark
  10911. Pop off mark ring into the buffer's actual mark.
  10912. Does not set point.  Does nothing if mark ring is empty.
  10913. Fexchange-point-and-mark
  10914. Put the mark where point is now, and point where the mark is now.
  10915. Fmark-something
  10916. internal function used by mark-sexp, mark-word, etc.
  10917. Fpop-global-mark
  10918. Pop off global mark ring and jump to the top location.
  10919. Vnext-line-add-newlines
  10920. *If non-nil, `next-line' inserts newline to avoid `end of buffer' error.
  10921. Fnext-line
  10922. Move cursor vertically down ARG lines.
  10923. If there is no character in the target line exactly under the current column,
  10924. the cursor is positioned after the character in that line which spans this
  10925. column, or at the end of the line if it is not long enough.
  10926.  
  10927. If there is no line in the buffer after this one, behavior depends on the
  10928. value of `next-line-add-newlines'.  If non-nil, a newline character is inserted
  10929. to create a line and the cursor moves to that line.  Otherwise the cursor is
  10930. moved to the end of the buffer if it is not already there and an error
  10931. is signaled.
  10932.  
  10933. The command \[set-goal-column] can be used to create
  10934. a semipermanent goal column to which this command always moves.
  10935. Then it does not try to move vertically.  This goal column is stored
  10936. in `goal-column', which is nil when there is none.
  10937.  
  10938. If you are thinking of using this in a Lisp program, consider
  10939. using `forward-line' instead.  It is usually easier to use
  10940. and more reliable (no dependence on goal column, etc.).
  10941. Fprevious-line
  10942. Move cursor vertically up ARG lines.
  10943. If there is no character in the target line exactly over the current column,
  10944. the cursor is positioned after the character in that line which spans this
  10945. column, or at the end of the line if it is not long enough.
  10946.  
  10947. The command \[set-goal-column] can be used to create
  10948. a semipermanent goal column to which this command always moves.
  10949. Then it does not try to move vertically.
  10950.  
  10951. If you are thinking of using this in a Lisp program, consider using
  10952. `forward-line' with a negative argument instead.  It is usually easier
  10953. to use and more reliable (no dependence on goal column, etc.).
  10954. Vtrack-eol
  10955. *Non-nil means vertical motion starting at end of line keeps to ends of lines.
  10956. This means moving to the end of each line moved onto.
  10957. The beginning of a blank line does not count as the end of a line.
  10958. Vgoal-column
  10959. *Semipermanent goal column for vertical motion, as set by \[set-goal-column], or nil.
  10960. Vtemporary-goal-column
  10961. Current goal column for vertical motion.
  10962. It is the column where point was
  10963. at the start of current run of vertical motion commands.
  10964. When the `track-eol' feature is doing its job, the value is 9999.
  10965. Fset-goal-column
  10966. Set the current horizontal position as a goal for \[next-line] and \[previous-line].
  10967. Those commands will move to this position in the line moved to
  10968. rather than trying to keep the same horizontal position.
  10969. With a non-nil argument, clears out the goal column
  10970. so that \[next-line] and \[previous-line] resume vertical motion.
  10971. The goal column is stored in the variable `goal-column'.
  10972. Fscroll-other-window-down
  10973. Scroll the "other window" down.
  10974. Fbeginning-of-buffer-other-window
  10975. Move point to the beginning of the buffer in the other window.
  10976. Leave mark at previous position.
  10977. With arg N, put point N/10 of the way from the true beginning.
  10978. Fend-of-buffer-other-window
  10979. Move point to the end of the buffer in the other window.
  10980. Leave mark at previous position.
  10981. With arg N, put point N/10 of the way from the true end.
  10982. Ftranspose-chars
  10983. Interchange characters around point, moving forward one character.
  10984. With prefix arg ARG, effect is to take character before point
  10985. and drag it forward past ARG other characters (backward if ARG negative).
  10986. If no argument and at end of line, the previous two chars are exchanged.
  10987. Ftranspose-words
  10988. Interchange words around point, leaving point at end of them.
  10989. With prefix arg ARG, effect is to take word before or around point
  10990. and drag it forward past ARG other words (backward if ARG negative).
  10991. If ARG is zero, the words around or after point and around or after mark
  10992. are interchanged.
  10993. Ftranspose-sexps
  10994. Like \[transpose-words] but applies to sexps.
  10995. Does not work on a sexp that point is in the middle of
  10996. if it is a list or string.
  10997. Ftranspose-lines
  10998. Exchange current line and previous line, leaving point after both.
  10999. With argument ARG, takes previous line and moves it past ARG lines.
  11000. With argument 0, interchanges line point is in with line mark is in.
  11001. Vcomment-column
  11002. *Column to indent right-margin comments to.
  11003. Setting this variable automatically makes it local to the current buffer.
  11004. Each mode establishes a different default value for this variable; you
  11005. can set the value for a particular mode using that mode's hook.
  11006. Vcomment-start
  11007. *String to insert to start a new comment, or nil if no comment syntax defined.
  11008. Vcomment-start-skip
  11009. *Regexp to match the start of a comment plus everything up to its body.
  11010. If there are any \(...\) pairs, the comment delimiter text is held to begin
  11011. at the place matched by the close of the first pair.
  11012. Vcomment-end
  11013. *String to insert to end a new comment.
  11014. Should be an empty string if comments are terminated by end-of-line.
  11015. Vcomment-indent-hook
  11016. Obsolete variable for function to compute desired indentation for a comment.
  11017. Use `comment-indent-function' instead.
  11018. This function is called with no args with point at the beginning of
  11019. the comment's starting delimiter.
  11020. Vcomment-indent-function
  11021. Function to compute desired indentation for a comment.
  11022. This function is called with no args with point at the beginning of
  11023. the comment's starting delimiter.
  11024. Findent-for-comment
  11025. Indent this line's comment to comment column, or insert an empty comment.
  11026. Fset-comment-column
  11027. Set the comment column based on point.
  11028. With no arg, set the comment column to the current column.
  11029. With just minus as arg, kill any comment on this line.
  11030. With any other arg, set comment column to indentation of the previous comment
  11031.  and then align or create a comment on this line at that column.
  11032. Fkill-comment
  11033. Kill the comment on this line, if any.
  11034. With argument, kill comments on that many lines starting with this one.
  11035. Fcomment-region
  11036. Comment or uncomment each line in the region.
  11037. With just C-u prefix arg, uncomment each line in region.
  11038. Numeric prefix arg ARG means use ARG comment characters.
  11039. If ARG is negative, delete that many comment characters instead.
  11040. Comments are terminated on each line, even for syntax in which newline does
  11041. not end the comment.  Blank lines do not get comments.
  11042. Fprefix-region
  11043. Add a prefix string to each line between mark and point.
  11044. Fbackward-word
  11045. Move backward until encountering the end of a word.
  11046. With argument, do this that many times.
  11047. In programs, it is faster to call `forward-word' with negative arg.
  11048. Fmark-word
  11049. Set mark arg words away from point.
  11050. Fkill-word
  11051. Kill characters forward until encountering the end of a word.
  11052. With argument, do this that many times.
  11053. Fbackward-kill-word
  11054. Kill characters backward until encountering the end of a word.
  11055. With argument, do this that many times.
  11056. Fcurrent-word
  11057. Return the word point is on (or a nearby word) as a string.
  11058. If optional arg STRICT is non-nil, return nil unless point is within
  11059. or adjacent to a word.
  11060. If point is not between two word-constituent characters, but immediately
  11061. follows one, move back first.
  11062. Otherwise, if point precedes a word constituent, move forward first.
  11063. Otherwise, move backwards until a word constituent is found and get that word;
  11064. if you a newlines is reached first, move forward instead.
  11065. Vfill-prefix
  11066. *String for filling to insert at front of new line, or nil for none.
  11067. Setting this variable automatically makes it local to the current buffer.
  11068. Vauto-fill-inhibit-regexp
  11069. *Regexp to match lines which should not be auto-filled.
  11070. Vcomment-multi-line
  11071. *Non-nil means \[indent-new-comment-line] should continue same comment
  11072. on new line, with no new terminator or starter.
  11073. This is obsolete because you might as well use \[newline-and-indent].
  11074. Findent-new-comment-line
  11075. Break line at point and indent, continuing comment if within one.
  11076. This indents the body of the continued comment
  11077. under the previous comment line.
  11078.  
  11079. This command is intended for styles where you write a comment per line,
  11080. starting a new comment (and terminating it if necessary) on each line.
  11081. If you want to continue one comment across several lines, use \[newline-and-indent].
  11082. Fauto-fill-mode
  11083. Toggle auto-fill mode.
  11084. With arg, turn auto-fill mode on if and only if arg is positive.
  11085. In auto-fill mode, inserting a space at a column beyond `fill-column'
  11086. automatically breaks the line at a previous space.
  11087. Fauto-fill-function
  11088. Automatically break line at a previous space, in insertion of text.
  11089. Fturn-on-auto-fill
  11090. Unconditionally turn on Auto Fill mode.
  11091. Fset-fill-column
  11092. Set `fill-column' to current column, or to argument if given.
  11093. The variable `fill-column' has a separate value for each buffer.
  11094. Fset-selective-display
  11095. Set `selective-display' to ARG; clear it if no arg.
  11096. When the value of `selective-display' is a number > 0,
  11097. lines whose indentation is >= that value are not displayed.
  11098. The variable `selective-display' has a separate value for each buffer.
  11099. Fnuke-selective-display
  11100. Ensure that the buffer is not in selective-display mode.
  11101. If `selective-display' is t, then restore the buffer text to it's original
  11102. state before disabling selective display.
  11103. Voverwrite-mode-textual
  11104. The string displayed in the modeline when in overwrite mode.
  11105. Voverwrite-mode-binary
  11106. The string displayed in the modeline when in binary overwrite mode.
  11107. Foverwrite-mode
  11108. Toggle overwrite mode.
  11109. With arg, turn overwrite mode on iff arg is positive.
  11110. In overwrite mode, printing characters typed in replace existing text
  11111. on a one-for-one basis, rather than pushing it to the right.  At the
  11112. end of a line, such characters extend the line.  Before a tab,
  11113. such characters insert until the tab is filled in.
  11114. \[quoted-insert] still inserts characters in overwrite mode; this
  11115. is supposed to make it easier to insert characters when necessary.
  11116. Fbinary-overwrite-mode
  11117. Toggle binary overwrite mode.
  11118. With arg, turn binary overwrite mode on iff arg is positive.
  11119. In binary overwrite mode, printing characters typed in replace
  11120. existing text.  Newlines are not treated specially, so typing at the
  11121. end of a line joins the line to the next, with the typed character
  11122. between them.  Typing before a tab character simply replaces the tab
  11123. with the character typed.
  11124. \[quoted-insert] replaces the text at the cursor, just as ordinary
  11125. typing characters do.
  11126.  
  11127. Note that binary overwrite mode is not its own minor mode; it is a
  11128. specialization of overwrite-mode, entered by setting the
  11129. `overwrite-mode' variable to `overwrite-mode-binary'.
  11130. Fline-number-mode
  11131. Toggle Line Number mode.
  11132. With arg, turn Line Number mode on iff arg is positive.
  11133. When Line Number mode is enabled, the line number appears
  11134. in the modeline.
  11135. Vblink-matching-paren
  11136. *Non-nil means show matching open-paren when close-paren is inserted.
  11137. Vblink-matching-paren-distance
  11138. *If non-nil, is maximum distance to search for matching open-paren.
  11139. Fblink-matching-open
  11140. Move cursor momentarily to the beginning of the sexp before point.
  11141. Fset-variable
  11142. Set VARIABLE to VALUE.  VALUE is a Lisp object.
  11143. When using this interactively, supply a Lisp expression for VALUE.
  11144. If you want VALUE to be a string, you must surround it with doublequotes.
  11145.  
  11146. If VARIABLE has a `variable-interactive' property, that is used as if
  11147. it were the arg to `interactive' (which see) to interactively read the value.
  11148. Factivate-region
  11149. Activate the region, if `zmacs-regions' is true.
  11150. Setting `zmacs-regions' to true causes LISPM-style active regions to be used.
  11151. This function has no effect if `zmacs-regions' is false.
  11152. Fregion-exists-p
  11153. Non-nil iff the region exists.
  11154. If active regions are in use (i.e. `zmacs-regions' is true), this means that
  11155.  the region is active.  Otherwise, this means that the user has pushed
  11156.  a mark in this buffer at some point in the past.
  11157. The functions `region-beginning' and `region-end' can be used to find the
  11158.  limits of the region.
  11159. Fregion-active-p
  11160. Non-nil iff the region is active.
  11161. If `zmacs-regions' is true, this is equivalent to `region-exists-p'.
  11162. Otherwise, this function always returns false.
  11163. Fcapitalize-region-or-word
  11164. Capitalize the selected region or the following word (or ARG words).
  11165. Fupcase-region-or-word
  11166. Upcase the selected region or the following word (or ARG words).
  11167. Fdowncase-region-or-word
  11168. Downcase the selected region or the following word (or ARG words).
  11169. Vzmacs-activate-region-hook
  11170. Function or functions called when the region becomes active;
  11171. see the variable `zmacs-regions'.
  11172. Vzmacs-deactivate-region-hook
  11173. Function or functions called when the region becomes inactive;
  11174. see the variable `zmacs-regions'.
  11175. Vzmacs-update-region-hook
  11176. Function or functions called when the active region changes.
  11177. This is called after each command that sets `zmacs-region-stays' to t.
  11178. See the variable `zmacs-regions'.
  11179. Vzmacs-region-extent
  11180. The extent of the zmacs region; don't use this.
  11181. Vzmacs-region-rectangular-p
  11182. Whether the zmacs region is a rectangle; don't use this.
  11183. Fzmacs-activate-region
  11184. Make the region between `point' and `mark' be active (highlighted),
  11185. if `zmacs-regions' is true.  Only a very small number of commands
  11186. should ever do this.  Calling this function will call the hook
  11187. `zmacs-activate-region-hook', if the region was previously inactive.
  11188. Calling this function ensures that the region stays active after the
  11189. current command terminates, even if `zmacs-region-stays' is not set.
  11190. Returns t if the region was activated (i.e. if `zmacs-regions' if t).
  11191. Fzmacs-deactivate-region
  11192. Make the region between `point' and `mark' no longer be active,
  11193. if `zmacs-regions' is true.  You shouldn't need to call this; the
  11194. command loop calls it when appropriate.  Calling this function will
  11195. call the hook `zmacs-deactivate-region-hook', if the region was
  11196. previously active.  Returns t if the region had been active, nil
  11197. otherwise.
  11198. Fzmacs-update-region
  11199. Update the highlighted region between `point' and `mark'.
  11200. You shouldn't need to call this; the command loop calls it
  11201. when appropriate.  Calling this function will call the hook
  11202. `zmacs-update-region-hook', if the region is active.
  11203. Vmessage-stack
  11204. An alist of label/string pairs representing active echo-area messages.
  11205. The first element in the list is currently displayed in the echo area.
  11206. Do not modify this directly--use the `message' or 
  11207. `display-message'/`clear-message' functions.
  11208. Vremove-message-hook
  11209. A function or list of functions to be called when a message is removed
  11210. from the echo area at the bottom of the frame.  The label of the removed
  11211. message is passed as the first argument, and the text of the message
  11212. as the second argument.
  11213. Vlog-message-max-size
  11214. Maximum size of the " *Message-Log*" buffer.  See `log-message'.
  11215. Vlog-message-ignore-regexps
  11216. List of regular expressions matching messages which shouldn't be logged.
  11217. See `log-message'.  
  11218.  
  11219. Ideally, packages which generate messages which might need to be ignored
  11220. should label them with 'progress, 'prompt, or 'no-log, so they can be 
  11221. filtered by the log-message-ignore-labels.
  11222. Vlog-message-ignore-labels
  11223. List of symbols indicating labels of messages which shouldn't be logged.
  11224. See `display-message' for some common labels.  See also `log-message'.
  11225. Fshow-message-log
  11226. Show the " *Message-Log*" buffer, which contains old messages and errors.
  11227. Vlog-message-filter-function
  11228. Value must be a function of two arguments: a symbol (label) and 
  11229. a string (messsage).  It should return non-nil to indicate a message
  11230. should be logged.  Possible values include 'log-message-filter and
  11231. 'log-message-filter-errors-only.
  11232. Flog-message-filter
  11233. Default value of log-message-filter-function.
  11234. Mesages whose text matches one of the log-message-ignore-regexps
  11235. or whose label appears in log-message-ignore-labels are not saved.
  11236. Flog-message-filter-errors-only
  11237. For use as the log-message-filter-function.  Only logs error messages.
  11238. Flog-message
  11239. Stuff a copy of the message into the " *Message-Log*" buffer,
  11240. if it satisfies the log-message-filter-function.
  11241.  
  11242. For use on remove-message-hook.
  11243. Fmessage-displayed-p
  11244. Return a non-nil value if a message is presently displayed in the
  11245. minibuffer's echo area.  If optional argument RETURN-STRING is non-nil,
  11246. return a string containing the message, otherwise just return t.
  11247. Fclear-message
  11248. Remove any message with the given LABEL from the message-stack,
  11249. erasing it from the echo area if it's currently displayed there.
  11250. If a message remains at the head of the message-stack and NO-RESTORE
  11251. is nil, it will be displayed.  The string which remains in the echo
  11252. area will be returned, or nil if the message-stack is now empty.
  11253. If LABEL is nil, the entire message-stack is cleared.
  11254.  
  11255. Unless you need the return value or you need to specify a lable,
  11256. you should just use (message nil).
  11257. Fdisplay-message
  11258. Print a one-line message at the bottom of the frame.  First argument
  11259. LABEL is an identifier for this message.  MESSAGE is the string to display.
  11260. Use `clear-message' to remove a labelled message.
  11261.  
  11262. Here are some standard labels (those marked with `*' are not logged
  11263. by default--see the `log-message-ignore-labels' variable):
  11264.     message       default label used by the `message' function
  11265.     error         default label used for reporting errors
  11266.   * progress      progress indicators like "Converting... 45%"
  11267.   * prompt        prompt-like messages like "I-search: foo"
  11268.   * no-log        messages that should never be logged
  11269. Fmessage
  11270. Print a one-line message at the bottom of the frame.
  11271. The arguments are the same as to `format'.
  11272.  
  11273. If the only argument is nil, clear any existing message; let the
  11274. minibuffer contents show.
  11275. Vlog-warning-minimum-level
  11276. Minimum level of warnings that should be logged.
  11277. The warnings in levels below this are completely ignored, as if they never
  11278. happened.
  11279.  
  11280. The recognized warning levels, in decreasing order of priority, are
  11281. 'emergency, 'alert, 'critical, 'error, 'warning, 'notice, 'info, and
  11282. 'debug.
  11283.  
  11284. See also `display-warning-minimum-level'.
  11285.  
  11286. You can also control which warnings are displayed on a class-by-class
  11287. basis.  See `display-warning-suppressed-classes' and
  11288. `log-warning-suppressed-classes'.
  11289. Vdisplay-warning-minimum-level
  11290. Minimum level of warnings that should be displayed.
  11291. The warnings in levels below this are completely ignored, as if they never
  11292. happened.
  11293.  
  11294. The recognized warning levels, in decreasing order of priority, are
  11295. 'emergency, 'alert, 'critical, 'error, 'warning, 'notice, 'info, and
  11296. 'debug.
  11297.  
  11298. See also `log-warning-minimum-level'.
  11299.  
  11300. You can also control which warnings are displayed on a class-by-class
  11301. basis.  See `display-warning-suppressed-classes' and
  11302. `log-warning-suppressed-classes'.
  11303. Vlog-warning-suppressed-classes
  11304. List of classes of warnings that shouldn't be logged or displayed.
  11305. If any of the CLASS symbols associated with a warning is the same as
  11306. any of the symbols listed here, the warning will be completely ignored,
  11307. as it they never happened.
  11308.  
  11309. NOTE: In most circumstances, you should *not* set this variable.
  11310. Set `display-warning-suppressed-classes' instead.  That way the suppressed
  11311. warnings are not displayed but are still unobtrusively logged.
  11312.  
  11313. See also `log-warning-minimum-level' and `display-warning-minimum-level'.
  11314. Vdisplay-warning-suppressed-classes
  11315. List of classes of warnings that shouldn't be displayed.
  11316. If any of the CLASS symbols associated with a warning is the same as
  11317. any of the symbols listed here, the warning will not be displayed.
  11318. The warning will still logged in the *Warnings* buffer (unless also
  11319. contained in `log-warning-suppressed-classes'), but the buffer will
  11320. not be automatically popped up.
  11321.  
  11322. See also `log-warning-minimum-level' and `display-warning-minimum-level'.
  11323. Vwarning-count
  11324. Count of the number of warning messages displayed so far.
  11325. Fwarning-level-p
  11326. Non-nil if LEVEL specifies a warning level.
  11327. Fafter-init-display-warnings
  11328. Display warnings deferred till after the init file is run.
  11329. Warnings that occur before then are deferred so that warning
  11330. suppression in the .emacs file will be honored.
  11331. Fdisplay-warning
  11332. Display a warning message.
  11333. CLASS should be a symbol describing what sort of warning this is, such
  11334. as `resource' or `key-mapping'.  A list of such symbols is also
  11335. accepted. (Individual classes can be suppressed; see
  11336. `display-warning-suppressed-classes'.) Optional argument LEVEL can
  11337. be used to specify a priority for the warning, other than default priority
  11338. `warning'. (See `display-warning-minimum-level').  The message is
  11339. inserted into the *Warnings* buffer, which is made visible at appropriate
  11340. times.
  11341. Fwarn
  11342. Display a warning message.
  11343. The message is constructed by passing all args to `format'.  The message
  11344. is placed in the *Warnings* buffer, which will be popped up at the next
  11345. redisplay.  The class of the warning is `warning'.  See also
  11346. `display-warning'.
  11347. Fdisplay-warning-buffer
  11348. Make the buffer that contains the warnings be visible.
  11349. The C code calls this periodically, right before redisplay.
  11350. Vhelp-map
  11351. Keymap for characters following the Help key.
  11352. Fhyperbole
  11353. Hyperbole info manager menus.
  11354. Ffinder-by-keyword
  11355. Find packages matching a given keyword.
  11356. Fhelp-with-tutorial
  11357. Select the XEmacs learn-by-doing tutorial.
  11358. Optional arg TUTORIAL specifies the tutorial file; default is "TUTORIAL".
  11359. Fdescribe-key-briefly
  11360. Print the name of the function KEY invokes.  KEY is a string.
  11361. Fprint-help-return-message
  11362. Display or return message saying how to restore windows after help command.
  11363. Computes a message and applies the optional argument FUNCTION to it.
  11364. If FUNCTION is nil, applies `message' to it, thus printing it.
  11365. Fdescribe-key
  11366. Display documentation of the function invoked by KEY.
  11367. KEY is a string, or vector of events.
  11368. When called interactvely, KEY may also be a menu selection.
  11369. Fdescribe-mode
  11370. Display documentation of current major mode and minor modes.
  11371. For this to work correctly for a minor mode, the mode's indicator variable
  11372. (listed in `minor-mode-alist') must also be a function whose documentation
  11373. describes the minor mode.
  11374. Fdescribe-distribution
  11375. Display info on how to obtain the latest version of XEmacs.
  11376. Fdescribe-copying
  11377. Display info on how you may redistribute copies of XEmacs.
  11378. Fdescribe-pointer
  11379. Show a list of all defined mouse buttons, and their definitions.
  11380. This is the same as \[universal-argument] \[describe-bindings].
  11381. Fdescribe-no-warranty
  11382. Display info on all the kinds of warranty XEmacs does NOT have.
  11383. Fdescribe-bindings
  11384. Show a list of all defined keys, and their definitions.
  11385. The list is put in a buffer, which is displayed.
  11386. If the optional argument PREFIX is supplied, only commands which
  11387. start with that sequence of keys are described.
  11388. If the second argument (prefix arg, interactively) is non-null
  11389. then only the mouse bindings are displayed.
  11390. Fdescribe-prefix-bindings
  11391. Describe the bindings of the prefix used to reach this command.
  11392. The prefix described consists of all but the last event
  11393. of the key sequence that ran this command.
  11394. Fxemacs-www-page
  11395. Go to the XEmacs World Wide Web page.
  11396. Fxemacs-www-faq
  11397. View the latest and greatest XEmacs FAQ using the World Wide Web.
  11398. Fxemacs-local-faq
  11399. View the local copy of the XEmacs FAQ.
  11400. If you have access to the World Wide Web, you should use `xemacs-www-faq'
  11401. instead, to ensure that you get the most up-to-date information.
  11402. Fview-emacs-news
  11403. Display info on recent changes to XEmacs.
  11404. Fview-lossage
  11405. Display last 100 input keystrokes.
  11406. Fhelp-for-help
  11407. You have typed \[help-for-help], the help character.  Type a Help option:
  11408. (Use \<help-map>\[scroll-up] or \[scroll-down] to scroll through this text.
  11409. Type \[help-quit] to exit the Help command.)
  11410.  
  11411. \[hyper-apropos]    Give a substring, and see a hypertext list of
  11412.         functions and variables that contain that substring.
  11413.     See also the `apropos'  command.
  11414. \[command-apropos]    Give a substring, and see a list of commands
  11415.         (functions interactively callable) that contain that substring.
  11416. \[describe-bindings]    Display table of all key bindings.
  11417. \[describe-key-briefly]    Type a command key sequence;
  11418.         it prints the function name that sequence runs.
  11419. \[describe-function]    Type a function name and get documentation of it.
  11420. \[Info-goto-emacs-command-node]    Type a function name;
  11421.      it takes you to the Info node for that command.
  11422. \[info]    The  info  documentation reader.
  11423. \[describe-key]    Type a command key sequence;
  11424.         it displays the full documentation.
  11425. \[Info-goto-emacs-key-command-node]    Type a command key sequence;
  11426.         it takes you to the Info node for the command bound to that key.
  11427. \[view-lossage]    Shows last 100 characters you typed.
  11428. \[describe-mode]    Print documentation of current major mode,
  11429.         which describes the commands peculiar to it.
  11430. \[view-emacs-news]    Shows emacs news file.
  11431. \[finder-by-keyword]    Find packages matching a given topic keyword.
  11432. \[describe-pointer]    Display table of all mouse-button bindings.
  11433. \[describe-syntax]    Display contents of syntax table, plus explanations
  11434. \[help-with-tutorial]    Select the XEmacs learn-by-doing tutorial.
  11435. \[describe-variable]    Type name of a variable;
  11436.         it displays the variable's documentation and value.
  11437. \[where-is]    Type command name;
  11438.         it prints which keystrokes invoke that command.
  11439. \[describe-copying]    print XEmacs copying permission (General Public License).
  11440. \[describe-distribution]    XEmacs ordering information.
  11441. \[view-emacs-news]    print print news of recent XEmacs changes.
  11442. \[describe-no-warranty]    print information on absence of warranty for XEmacs.
  11443. \[Info-query]    Info reader, prompt for topic name.
  11444. Vdescribe-function-show-arglist
  11445. *If true, then describe-function will show its arglist if the function is
  11446. not an autoload.
  11447. Fdescribe-function
  11448. Display the full documentation of FUNCTION (a symbol).
  11449. Ffunction-obsoleteness-doc
  11450. If FUNCTION is obsolete, return a string describing this.
  11451. Fvariable-obsoleteness-doc
  11452. If VARIABLE is obsolete, return a string describing this.
  11453. Fdescribe-variable
  11454. Display the full documentation of VARIABLE (a symbol).
  11455. Fwhere-is
  11456. Print message listing key sequences that invoke specified command.
  11457. Argument is a command definition, usually a symbol with a function definition.
  11458. Fcommand-apropos
  11459. Like apropos but lists only symbols that are names of commands
  11460. (interactively callable functions).  Argument REGEXP is a regular expression
  11461. that is matched against command symbol names.  Returns list of symbols and
  11462. documentation found.
  11463. Flocate-library
  11464. Show the full path name of XEmacs library LIBRARY.
  11465. This command searches the directories in `load-path' like `M-x load-library'
  11466. to find the file that `M-x load-library RET LIBRARY RET' would load.
  11467. Optional second arg NOSUFFIX non-nil means don't add suffixes `.elc' or `.el'
  11468. to the specified name LIBRARY (a la calling `load' instead of `load-library').
  11469. Fdescribe-syntax
  11470. Describe the syntax specifications in the syntax table.
  11471. The descriptions are inserted in a buffer, which is then displayed.
  11472. Flist-processes
  11473. Display a list of all processes.
  11474. (Any processes listed as Exited or Signaled are actually eliminated
  11475. after the listing is made.)
  11476. Vmake-backup-files
  11477. *Non-nil means make a backup of a file the first time it is saved.
  11478. This can be done by renaming the file or by copying.
  11479.  
  11480. Renaming means that XEmacs renames the existing file so that it is a
  11481. backup file, then writes the buffer into a new file.  Any other names
  11482. that the old file had will now refer to the backup file.  The new file
  11483. is owned by you and its group is defaulted.
  11484.  
  11485. Copying means that XEmacs copies the existing file into the backup
  11486. file, then writes the buffer on top of the existing file.  Any other
  11487. names that the old file had will now refer to the new (edited) file.
  11488. The file's owner and group are unchanged.
  11489.  
  11490. The choice of renaming or copying is controlled by the variables
  11491. `backup-by-copying', `backup-by-copying-when-linked' and
  11492. `backup-by-copying-when-mismatch'.  See also `backup-inhibited'.
  11493. Vbackup-inhibited
  11494. Non-nil means don't make a backup, regardless of the other parameters.
  11495. This variable is intended for use by making it local to a buffer.
  11496. But it is local only if you make it local.
  11497. Vbackup-by-copying
  11498. *Non-nil means always use copying to create backup files.
  11499. See documentation of variable `make-backup-files'.
  11500. Vbackup-by-copying-when-linked
  11501. *Non-nil means use copying to create backups for files with multiple names.
  11502. This causes the alternate names to refer to the latest version as edited.
  11503. This variable is relevant only if `backup-by-copying' is nil.
  11504. Vbackup-by-copying-when-mismatch
  11505. *Non-nil means create backups by copying if this preserves owner or group.
  11506. Renaming may still be used (subject to control of other variables)
  11507. when it would not result in changing the owner or group of the file;
  11508. that is, for files which are owned by you and whose group matches
  11509. the default for a new file created there by you.
  11510. This variable is relevant only if `backup-by-copying' is nil.
  11511. Vbackup-enable-predicate
  11512. Predicate that looks at a file name and decides whether to make backups.
  11513. Called with an absolute file name as argument, it returns t to enable backup.
  11514. Vbuffer-offer-save
  11515. *Non-nil in a buffer means offer to save the buffer on exit
  11516. even if the buffer is not visiting a file.
  11517. Automatically local in all buffers.
  11518. Vbuffer-file-number
  11519. The device number and file number of the file visited in the current buffer.
  11520. The value is a list of the form (FILENUM DEVNUM).
  11521. This pair of numbers uniquely identifies the file.
  11522. If the buffer is visiting a new file, the value is nil.
  11523. Vfile-precious-flag
  11524. *Non-nil means protect against I/O errors while saving files.
  11525. Some modes set this non-nil in particular buffers.
  11526. Vversion-control
  11527. *Control use of version numbers for backup files.
  11528. t means make numeric backup versions unconditionally.
  11529. nil means make them for files that have some already.
  11530. `never' means do not make them.
  11531. Vdired-kept-versions
  11532. *When cleaning directory, number of versions to keep.
  11533. Vdelete-old-versions
  11534. *If t, delete excess backup versions silently.
  11535. If nil, ask confirmation.  Any other value prevents any trimming.
  11536. Vkept-old-versions
  11537. *Number of oldest versions to keep when a new numbered backup is made.
  11538. Vkept-new-versions
  11539. *Number of newest versions to keep when a new numbered backup is made.
  11540. Includes the new backup.  Must be > 0
  11541. Vrequire-final-newline
  11542. *Value of t says silently ensure a file ends in a newline when it is saved.
  11543. Non-nil but not t says ask user whether to add a newline when there isn't one.
  11544. nil means don't add newlines.
  11545. Vauto-save-default
  11546. *Non-nil says by default do auto-saving of every file-visiting buffer.
  11547. Vauto-save-visited-file-name
  11548. *Non-nil says auto-save a buffer in the file it is visiting, when practical.
  11549. Normally auto-save files are written under other names.
  11550. Vsave-abbrevs
  11551. *Non-nil means save word abbrevs too when files are saved.
  11552. Loading an abbrev file sets this to t.
  11553. Vfind-file-run-dired
  11554. *Non-nil says run dired if `find-file' is given the name of a directory.
  11555. Vfind-file-not-found-hooks
  11556. List of functions to be called for `find-file' on nonexistent file.
  11557. These functions are called as soon as the error is detected.
  11558. `buffer-file-name' is already set up.
  11559. The functions are called in the order given until one of them returns non-nil.
  11560. Vfind-file-hooks
  11561. List of functions to be called after a buffer is loaded from a file.
  11562. The buffer's local variables (if any) will have been processed before the
  11563. functions are called.
  11564. Vwrite-file-hooks
  11565. List of functions to be called before writing out a buffer to a file.
  11566. If one of them returns non-nil, the file is considered already written
  11567. and the rest are not called.
  11568. These hooks are considered to pertain to the visited file.
  11569. So this list is cleared if you change the visited file name.
  11570. See also `write-contents-hooks' and `continue-save-buffer'.
  11571. Don't make this variable buffer-local; instead, use `local-write-file-hooks'.
  11572. Vlocal-write-file-hooks
  11573. Just like `write-file-hooks', except intended for per-buffer use.
  11574. The functions in this list are called before the ones in
  11575. `write-file-hooks'.
  11576. Vafter-save-hook
  11577. List of functions to be called after writing out a buffer to a file.
  11578. These hooks are considered to pertain to the visited file.
  11579. So this list is cleared if you change the visited file name.
  11580. Vafter-set-visited-file-name-hooks
  11581. List of functions to be called after \[set-visited-file-name]
  11582. or during \[write-file].
  11583. You can use this hook to restore local values of write-file-hooks,
  11584. after-write-file-hooks, and revert-buffer-function, which pertain
  11585. to a specific file and therefore are normally killed by a rename.
  11586. Put hooks pertaining to the buffer contents on write-contents-hooks
  11587. and revert-buffer-insert-file-contents-function.
  11588. Vwrite-contents-hooks
  11589. List of functions to be called before writing out a buffer to a file.
  11590. If one of them returns non-nil, the file is considered already written
  11591. and the rest are not called.
  11592. These hooks are considered to pertain to the buffer's contents,
  11593. not to the particular visited file; thus, `set-visited-file-name' does
  11594. not clear this variable, but changing the major mode does clear it.
  11595. See also `write-file-hooks' and `continue-save-buffer'.
  11596. Vwrite-file-data-hooks
  11597. List of functions to be called to put the bytes on disk.  
  11598. These functions receive the name of the file to write to as argument.
  11599. The default behavior is to call 
  11600.   (write-region (point-min) (point-max) filename nil t)
  11601. If one of them returns non-nil, the file is considered already written
  11602. and the rest are not called.
  11603. These hooks are considered to pertain to the visited file.
  11604. So this list is cleared if you change the visited file name.
  11605. See also `write-file-hooks'.
  11606. Venable-local-variables
  11607. *Control use of local-variables lists in files you visit.
  11608. The value can be t, nil or something else.
  11609. A value of t means local-variables lists are obeyed;
  11610. nil means they are ignored; anything else means query.
  11611.  
  11612. The command \[normal-mode] always obeys local-variables lists
  11613. and ignores this variable.
  11614. Venable-local-eval
  11615. *Control processing of the "variable" `eval' in a file's local variables.
  11616. The value can be t, nil or something else.
  11617. A value of t means obey `eval' variables;
  11618. nil means ignore them; anything else means query.
  11619.  
  11620. The command \[normal-mode] always obeys local-variables lists
  11621. and ignores this variable.
  11622. Vhack-local-variables-hook
  11623. List of functions to be called after local variables in a buffer have
  11624. been processed.  This hook runs even if there were no local variables or
  11625. if their evaluation was suppressed.  See also `enable-local-variables'
  11626. and `enable-local-eval'.
  11627. Fpwd
  11628. Show the current default directory.
  11629. Vcd-path
  11630. Value of the CDPATH environment variable, as a list.
  11631. Not actually set up until the first time you you use it.
  11632. Fparse-colon-path
  11633. Explode a colon-separated list of paths into a string list.
  11634. Fcd-absolute
  11635. Change current directory to given absolute file name DIR.
  11636. Fcd
  11637. Make DIR become the current buffer's default directory.
  11638. If your environment includes a `CDPATH' variable, try each one of that
  11639. colon-separated list of directories when resolving a relative directory name.
  11640. Fload-file
  11641. Load the Lisp file named FILE.
  11642. Fload-library
  11643. Load the library named LIBRARY.
  11644. This is an interface to the function `load'.
  11645. Ffind-library
  11646. Find the library of Lisp code named LIBRARY.
  11647. This searches `load-path' for a file named either "LIBRARY" or "LIBRARY.el".
  11648. Ffile-local-copy
  11649. Copy the file FILE into a temporary file on this machine.
  11650. Returns the name of the local copy, or nil, if FILE is directly
  11651. accessible.
  11652. Ffile-chase-links
  11653. Chase links in FILENAME until a name that is not a link.
  11654. Does not examine containing directories for links,
  11655. unlike `file-truename'.
  11656. Fswitch-to-other-buffer
  11657. Switch to the previous buffer.  With a numeric arg, n, switch to the nth
  11658. most recent buffer.  With an arg of 0, buries the current buffer at the
  11659. bottom of the buffer stack.
  11660. Fswitch-to-buffer-other-window
  11661. Select buffer BUFFER in another window.
  11662. Fswitch-to-buffer-other-frame
  11663. Switch to buffer BUFFER in a newly-created frame.
  11664. Ffind-file
  11665. Edit file FILENAME.
  11666. Switch to a buffer visiting file FILENAME,
  11667. creating one if none already exists.
  11668. Ffind-file-other-window
  11669. Edit file FILENAME, in another window.
  11670. May create a new window, or reuse an existing one.
  11671. See the function `display-buffer'.
  11672. Ffind-file-other-frame
  11673. Edit file FILENAME, in a newly-created frame.
  11674. Ffind-file-read-only
  11675. Edit file FILENAME but don't allow changes.
  11676. Like \[find-file] but marks buffer as read-only.
  11677. Use \[toggle-read-only] to permit editing.
  11678. Ffind-file-read-only-other-window
  11679. Edit file FILENAME in another window but don't allow changes.
  11680. Like \[find-file-other-window] but marks buffer as read-only.
  11681. Use \[toggle-read-only] to permit editing.
  11682. Ffind-file-read-only-other-frame
  11683. Edit file FILENAME in another frame but don't allow changes.
  11684. Like \[find-file-other-frame] but marks buffer as read-only.
  11685. Use \[toggle-read-only] to permit editing.
  11686. Ffind-alternate-file
  11687. Find file FILENAME, select its buffer, kill previous buffer.
  11688. If the current buffer now contains an empty file that you just visited
  11689. (presumably by mistake), use this command to visit the file you really want.
  11690. Fcreate-file-buffer
  11691. Create a suitably named buffer for visiting FILENAME, and return it.
  11692. FILENAME (sans directory) is used unchanged if that name is free;
  11693. otherwise a string <2> or <3> or ... is appended to get an unused name.
  11694. Fgenerate-new-buffer
  11695. Create and return a buffer with a name based on NAME.
  11696. Choose the buffer's name using `generate-new-buffer-name'.
  11697. Vfind-file-not-true-dirname-list
  11698. *List of logical names for which visiting shouldn't save the true dirname.
  11699. On VMS, when you visit a file using a logical name that searches a path,
  11700. you may or may not want the visited file name to record the specific
  11701. directory where the file was found.  If you *do not* want that, add the logical
  11702. name to this list as a string.
  11703. Ffind-file-noselect
  11704. Read file FILENAME into a buffer and return the buffer.
  11705. If a buffer exists visiting FILENAME, return that one, but
  11706. verify that the file has not changed since visited or saved.
  11707. The buffer is not selected, just returned to the caller.
  11708. If NOWARN is non-nil warning messages about several potential
  11709. problems will be suppressed.
  11710. Fafter-find-file
  11711. Called after finding a file and by the default revert function.
  11712. Sets buffer mode, parses local variables.
  11713. Optional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an
  11714. error in reading the file.  WARN non-nil means warn if there
  11715. exists an auto-save file more recent than the visited file.
  11716. NOAUTO means don't mess with auto-save mode.
  11717. Fourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER non-nil
  11718.  means this call was from `revert-buffer'.
  11719. Finishes by calling the functions in `find-file-hooks'.
  11720. Fnormal-mode
  11721. Choose the major mode for this buffer automatically.
  11722. Also sets up any specified local variables of the file.
  11723. Uses the visited file name, the -*- line, and the local variables spec.
  11724.  
  11725. This function is called automatically from `find-file'.  In that case,
  11726. we may set up specified local variables depending on the value of
  11727. `enable-local-variables': if it is t, we do; if it is nil, we don't;
  11728. otherwise, we query.  `enable-local-variables' is ignored if you
  11729. run `normal-mode' explicitly.
  11730. Vauto-mode-alist
  11731. Alist of filename patterns vs corresponding major mode functions.
  11732. Each element looks like (REGEXP . FUNCTION) or (REGEXP FUNCTION).
  11733. Visiting a file whose name matches REGEXP causes FUNCTION to be called.
  11734. If the element has the form (REGEXP FUNCTION), then after calling
  11735. FUNCTION, we delete the suffix that matched REGEXP and search the list
  11736. again for another match.
  11737. Vinterpreter-mode-alist
  11738. Alist mapping interpreter names to major modes.
  11739. This alist applies to files whose first line starts with `#!'.
  11740. Each element looks like (INTERPRETER . MODE).
  11741. The car of each element is compared with
  11742. the name of the interpreter specified in the first line.
  11743. If it matches, mode MODE is selected.
  11744. Vinhibit-first-line-modes-regexps
  11745. List of regexps; if one matches a file name, don't look for `-*-'.
  11746. Vuser-init-file
  11747. File name including directory of user's initialization file.
  11748. Fset-auto-mode
  11749. Select major mode appropriate for current buffer.
  11750. This checks for a -*- mode tag in the buffer's text,
  11751. compares the filename against the entries in `auto-mode-alist',
  11752. or checks the interpreter that runs this file against
  11753. `interpreter-mode-alist'.
  11754.  
  11755. It does not check for the `mode:' local variable in the
  11756. Local Variables section of the file; for that, use `hack-local-variables'.
  11757.  
  11758. If `enable-local-variables' is nil, this function does not check for a
  11759. -*- mode tag.
  11760. Fhack-local-variables
  11761. Parse, and bind or evaluate as appropriate, any local variables
  11762. for current buffer.
  11763. Vignored-local-variables
  11764. Variables to be ignored in a file's local variable spec.
  11765. Fset-visited-file-name
  11766. Change name of file visited in current buffer to FILENAME.
  11767. The next time the buffer is saved it will go in the newly specified file.
  11768. nil or empty string as argument means make buffer not be visiting any file.
  11769. Remember to delete the initial contents of the minibuffer
  11770. if you wish to pass an empty string as the argument.
  11771. Fwrite-file
  11772. Write current buffer into file FILENAME.
  11773. Makes buffer visit that file, and marks it not modified.
  11774. If the buffer is already visiting a file, you can specify
  11775. a directory name as FILENAME, to write a file of the same
  11776. old name in that directory.
  11777. Fbackup-buffer
  11778. Make a backup of the disk file visited by the current buffer, if appropriate.
  11779. This is normally done before saving the buffer the first time.
  11780. If the value is non-nil, it is the result of `file-modes' on the original file;
  11781. this means that the caller, after saving the buffer, should change the modes
  11782. of the new file to agree with the old modes.
  11783. Ffile-name-sans-versions
  11784. Return FILENAME sans backup versions or strings.
  11785. This is a separate procedure so your site-init or startup file can
  11786. redefine it.
  11787. If the optional argument KEEP-BACKUP-VERSION is non-nil,
  11788. we do not remove backup version numbers, only true file version numbers.
  11789. Fmake-backup-file-name
  11790. Create the non-numeric backup file name for FILE.
  11791. This is a separate function so you can redefine it for customization.
  11792. Fbackup-file-name-p
  11793. Return non-nil if FILE is a backup file name (numeric or not).
  11794. This is a separate function so you can redefine it for customization.
  11795. You may need to redefine `file-name-sans-versions' as well.
  11796. Fbackup-extract-version
  11797. Given the name of a numeric backup file, return the backup number.
  11798. Uses the free variable `bv-length', whose value should be
  11799. the index in the name where the version number begins.
  11800. Ffind-backup-file-name
  11801. Find a file name for a backup file, and suggestions for deletions.
  11802. Value is a list whose car is the name for the backup file
  11803.  and whose cdr is a list of old versions to consider deleting now.
  11804. Ffile-nlinks
  11805. Return number of names file FILENAME has.
  11806. Ffile-relative-name
  11807. Convert FILENAME to be relative to DIRECTORY (default: default-directory).
  11808. Fsave-buffer
  11809. Save current buffer in visited file if modified.  Versions described below.
  11810.  
  11811. By default, makes the previous version into a backup file
  11812.  if previously requested or if this is the first save.
  11813. With 1 or 3 \[universal-argument]'s, marks this version
  11814.  to become a backup when the next save is done.
  11815. With 2 or 3 \[universal-argument]'s,
  11816.  unconditionally makes the previous version into a backup file.
  11817. With argument of 0, never makes the previous version into a backup file.
  11818.  
  11819. If a file's name is FOO, the names of its numbered backup versions are
  11820.  FOO.~i~ for various integers i.  A non-numbered backup file is called FOO~.
  11821. Numeric backups (rather than FOO~) will be made if value of
  11822.  `version-control' is not the atom `never' and either there are already
  11823.  numeric versions of the file being backed up, or `version-control' is
  11824.  non-nil.
  11825. We don't want excessive versions piling up, so there are variables
  11826.  `kept-old-versions', which tells XEmacs how many oldest versions to keep,
  11827.  and `kept-new-versions', which tells how many newest versions to keep.
  11828.  Defaults are 2 old versions and 2 new.
  11829. `dired-kept-versions' controls dired's clean-directory (.) command.
  11830. If `delete-old-versions' is nil, system will query user
  11831.  before trimming versions.  Otherwise it does it silently.
  11832. Fdelete-auto-save-file-if-necessary
  11833. Delete auto-save file for current buffer if `delete-auto-save-files' is t.
  11834. Normally delete only if the file was written by this XEmacs
  11835. since the last real save, but optional arg FORCE non-nil means delete anyway.
  11836. Fbasic-save-buffer
  11837. Save the current buffer in its visited file, if it has been modified.
  11838. Fcontinue-save-buffer
  11839. Provide a clean way for a write-file-hook to wrap AROUND
  11840. the execution of the remaining hooks and writing to disk.
  11841. Do not call this function except from a functions
  11842. on the write-file-hooks or write-contents-hooks list.
  11843. A hook that calls this function must return non-nil,
  11844. to signal completion to its caller.  continue-save-buffer
  11845. always returns non-nil.
  11846. Fsave-some-buffers
  11847. Save some modified file-visiting buffers.  Asks user about each one.
  11848. Optional argument (the prefix) non-nil means save all with no questions.
  11849. Optional second argument EXITING means ask about certain non-file buffers
  11850.  as well as about file buffers.
  11851. Fnot-modified
  11852. Mark current buffer as unmodified, not needing to be saved.
  11853. With prefix arg, mark buffer as modified, so \[save-buffer] will save.
  11854. Ftoggle-read-only
  11855. Change whether this buffer is visiting its file read-only.
  11856. With arg, set read-only iff arg is positive.
  11857. Finsert-file
  11858. Insert contents of file FILENAME into buffer after point.
  11859. Set mark after the inserted text.
  11860.  
  11861. This function is meant for the user to run interactively.
  11862. Don't call it from programs!  Use `insert-file-contents' instead.
  11863. (Its calling sequence is different; see its documentation).
  11864. Fappend-to-file
  11865. Append the contents of the region to the end of file FILENAME.
  11866. When called from a function, expects three arguments,
  11867. START, END and FILENAME.  START and END are buffer positions
  11868. saying what text to write.
  11869. Ffile-newest-backup
  11870. Return most recent backup file for FILENAME or nil if no backups exist.
  11871. Frename-uniquely
  11872. Rename current buffer to a similar name not already taken.
  11873. This function is useful for creating multiple shell process buffers
  11874. or multiple mail buffers, etc.
  11875. Fmake-directory-path
  11876. Create all the directories along path that don't exist yet.
  11877. Fmake-directory
  11878. Create the directory DIR and any nonexistent parent dirs.
  11879. Interactively, the default choice of directory to create
  11880. is the current default directory for file names.
  11881. That is useful when you have visited a file in a nonexistent directory.
  11882.  
  11883. Noninteractively, the second (optional) argument PARENTS says whether
  11884. to create parent directories if they don't exist.
  11885. Vrevert-buffer-function
  11886. Function to use to revert this buffer, or nil to do the default.
  11887. The function receives two arguments IGNORE-AUTO and NOCONFIRM,
  11888. which are the arguments that `revert-buffer' received.
  11889. Vrevert-buffer-insert-file-contents-function
  11890. Function to use to insert contents when reverting this buffer.
  11891. Gets two args, first the nominal file name to use,
  11892. and second, t if reading the auto-save file.
  11893. Frevert-buffer
  11894. Replace the buffer text with the text of the visited file on disk.
  11895. This undoes all changes since the file was visited or saved.
  11896. With a prefix argument, offer to revert from latest auto-save file, if
  11897. that is more recent than the visited file.
  11898. When called from lisp, the first argument is IGNORE-AUTO; only offer
  11899. to revert from the auto-save file when this is nil.  Note that the
  11900. sense of this argument is the reverse of the prefix argument, for the
  11901. sake of backward compatibility.  IGNORE-AUTO is optional, defaulting
  11902. to nil.
  11903.  
  11904. Optional second argument NOCONFIRM means don't ask for confirmation at
  11905. all.
  11906.  
  11907. If the value of `revert-buffer-function' is non-nil, it is called to
  11908. do the work.
  11909.  
  11910. The default revert function runs the hook `before-revert-hook' at the
  11911. beginning and `after-revert-hook' at the end.
  11912. Frecover-file
  11913. Visit file FILE, but get contents from its last auto-save file.
  11914. Fkill-some-buffers
  11915. For each buffer, ask whether to kill it.
  11916. Fauto-save-mode
  11917. Toggle auto-saving of contents of current buffer.
  11918. With prefix argument ARG, turn auto-saving on if positive, else off.
  11919. Frename-auto-save-file
  11920. Adjust current buffer's auto save file name for current conditions.
  11921. Also rename any existing auto save file, if it was made in this session.
  11922. Fmake-auto-save-file-name
  11923. Return file name to use for auto-saves of current buffer.
  11924. Does not consider `auto-save-visited-file-name' as that variable is checked
  11925. before calling this function.  You can redefine this for customization.
  11926. See also `auto-save-file-name-p'.
  11927. Fauto-save-file-name-p
  11928. Return non-nil if FILENAME can be yielded by `make-auto-save-file-name'.
  11929. FILENAME should lack slashes.
  11930. You can redefine this for customization.
  11931. Vlist-directory-brief-switches
  11932. *Switches for list-directory to pass to `ls' for brief listing,
  11933. Vlist-directory-verbose-switches
  11934. *Switches for list-directory to pass to `ls' for verbose listing,
  11935. Flist-directory
  11936. Display a list of files in or matching DIRNAME, a la `ls'.
  11937. DIRNAME is globbed by the shell if necessary.
  11938. Prefix arg (second arg if noninteractive) means supply -l switch to `ls'.
  11939. Actions controlled by variables `list-directory-brief-switches'
  11940. and `list-directory-verbose-switches'.
  11941. Vinsert-directory-program
  11942. Absolute or relative name of the `ls' program used by `insert-directory'.
  11943. Finsert-directory
  11944. Insert directory listing for FILE, formatted according to SWITCHES.
  11945. Leaves point after the inserted text.
  11946. SWITCHES may be a string of options, or a list of strings.
  11947. Optional third arg WILDCARD means treat FILE as shell wildcard.
  11948. Optional fourth arg FULL-DIRECTORY-P means file is a directory and
  11949. switches do not contain `d', so that a full listing is expected.
  11950.  
  11951. This works by running a directory listing program
  11952. whose name is in the variable `insert-directory-program'.
  11953. If WILDCARD, it also runs the shell specified by `shell-file-name'.
  11954. Vkill-emacs-query-functions
  11955. Functions to call with no arguments to query about killing XEmacs.
  11956. If any of these functions returns nil, killing XEmacs is cancelled.
  11957. Fsave-buffers-kill-emacs
  11958. Offer to save each buffer, then kill this XEmacs process.
  11959. With prefix arg, silently save all file-visiting buffers, then kill.
  11960. Fsymlink-expand-file-name
  11961. If FILENAME is a symlink, return its non-symlink equivalent.
  11962. Unlike `file-truename', this doesn't chase symlinks in directory
  11963. components of the file or expand a relative pathname into an
  11964. absolute one.
  11965. Finsert-file-contents
  11966. Insert contents of file FILENAME after point.
  11967. Returns list of absolute file name and length of data inserted.
  11968. If second argument VISIT is non-nil, the buffer's visited filename
  11969. and last save file modtime are set, and it is marked unmodified.
  11970. If visiting and the file does not exist, visiting is completed
  11971. before the error is signaled.
  11972.  
  11973. The optional third and fourth arguments BEG and END
  11974. specify what portion of the file to insert.
  11975. If VISIT is non-nil, BEG and END must be nil.
  11976. If optional fifth argument REPLACE is non-nil,
  11977. it means replace the current buffer contents (in the accessible portion)
  11978. with the file contents.  This is better than simply deleting and inserting
  11979. the whole thing because (1) it preserves some marker positions
  11980. and (2) it puts less data in the undo list.
  11981. If support for Mule exists in this XEmacs, code conversion occurs according
  11982. to the value of `input-coding-system', and `used-coding-system' is set to
  11983. the coding system actually used.  Currently BEG and END refer to byte
  11984. positions (as opposed to character positions), even in Mule.
  11985. Fwrite-region
  11986. Write current region into specified file.
  11987. When called from a program, takes three arguments:
  11988. START, END and FILENAME.  START and END are buffer positions.
  11989. Optional fourth argument APPEND if non-nil means
  11990.   append to existing file contents (if any).
  11991. Optional fifth argument VISIT if t means
  11992.   set the last-save-file-modtime of buffer to this file's modtime
  11993.   and mark buffer not modified.
  11994. If VISIT is a string, it is a second file name;
  11995.   the output goes to FILENAME, but the buffer is marked as visiting VISIT.
  11996.   VISIT is also the file name to lock and unlock for clash detection.
  11997. If VISIT is neither t nor nil nor a string,
  11998.   that means do not print the "Wrote file" message.
  11999. Kludgy feature: if START is a string, then that string is written
  12000. to the file, instead of any buffer contents, and END is ignored.
  12001. If support for Mule exists in this XEmacs, code conversion occurs according
  12002. to the value of `output-coding-system'.
  12003. Fload
  12004. Execute a file of Lisp code named FILE.
  12005. First try FILE with `.elc' appended, then try with `.el',
  12006.  then try FILE unmodified.
  12007. This function searches the directories in `load-path'.
  12008. If optional second arg NOERROR is non-nil,
  12009.  report no error if FILE doesn't exist.
  12010. Print messages at start and end of loading unless
  12011.  optional third arg NOMESSAGE is non-nil (ignored in -batch mode).
  12012. If optional fourth arg NOSUFFIX is non-nil, don't try adding
  12013.  suffixes `.elc' or `.el' to the specified name FILE.
  12014. Return t if file exists.
  12015. Vindent-line-function
  12016. Function to indent current line.
  12017. Findent-according-to-mode
  12018. Indent line in proper way for current major mode.
  12019. Findent-for-tab-command
  12020. Indent line in proper way for current major mode.
  12021. Findent-rigidly
  12022. Indent all lines starting in the region sideways by ARG columns.
  12023. Called from a program, takes three arguments, START, END and ARG.
  12024. Vindent-region-function
  12025. Function which is short cut to indent region using indent-according-to-mode.
  12026. A value of nil means really run indent-according-to-mode on each line.
  12027. Findent-region
  12028. Indent each nonblank line in the region.
  12029. With no argument, indent each line using `indent-according-to-mode',
  12030. or use `indent-region-function' to do the whole region if that's non-nil.
  12031. If there is a fill prefix, make each line start with the fill prefix.
  12032. With argument COLUMN, indent each line to that column.
  12033. Called from a program, takes three args: START, END and COLUMN.
  12034. Findent-relative-maybe
  12035. Indent a new line like previous nonblank line.
  12036. Findent-relative
  12037. Space out to under next indent point in previous nonblank line.
  12038. An indent point is a non-whitespace character following whitespace.
  12039. If the previous nonblank line has no indent points beyond
  12040. the column point starts at, `tab-to-tab-stop' is done instead.
  12041. Vtab-stop-list
  12042. *List of tab stop positions used by `tab-to-tab-stops'.
  12043. This should be a list of integers, ordered from smallest to largest.
  12044. Vedit-tab-stops-map
  12045. Keymap used in `edit-tab-stops'.
  12046. Vedit-tab-stops-buffer
  12047. Buffer whose tab stops are being edited--in case
  12048. the variable `tab-stop-list' is local in that buffer.
  12049. Fedit-tab-stops
  12050. Edit the tab stops used by `tab-to-tab-stop'.
  12051. Creates a buffer *Tab Stops* containing text describing the tab stops.
  12052. A colon indicates a column where there is a tab stop.
  12053. You can add or remove colons and then do \<edit-tab-stops-map>\[edit-tab-stops-note-changes] to make changes take effect.
  12054. Fedit-tab-stops-note-changes
  12055. Put edited tab stops into effect.
  12056. Ftab-to-tab-stop
  12057. Insert spaces or tabs to next defined tab-stop column.
  12058. The variable `tab-stop-list' is a list of columns at which there are tab stops.
  12059. Use \[edit-tab-stops] to edit them interactively.
  12060. Fmove-to-tab-stop
  12061. Move point to next defined tab-stop column.
  12062. The variable `tab-stop-list' is a list of columns at which there are tab stops.
  12063. Use \[edit-tab-stops] to edit them interactively.
  12064. Vselect-frame-hook
  12065. Function or functions to run just after a new frame is given the focus.
  12066. Note that calling `select-frame' does not necessarily set the focus:
  12067. The actual window-system focus will not be changed until the next time
  12068. that XEmacs is waiting for an event, and even then, the window manager
  12069. may refuse the focus-change request.
  12070. Vdeselect-frame-hook
  12071. Function or functions to run just before a frame loses the focus.
  12072. See `select-frame-hook'.
  12073. Vinitial-frame-alist
  12074. Alist of default values for the first frame.
  12075. This may be set by the window-system-specific init file.
  12076. Fget-other-frame
  12077. Return some frame other than the current frame, creating one if necessary.
  12078. Fnext-multiframe-window
  12079. Select the next window, regardless of which frame it is on.
  12080. Fprevious-multiframe-window
  12081. Select the previous window, regardless of which frame it is on.
  12082. Fframe-list
  12083. Return a list of all frames on all devices.
  12084. Ffiltered-frame-list
  12085. Return a list of all live frames which satisfy PREDICATE.
  12086. Fother-frame
  12087. Select the ARG'th different visible frame, and raise it.
  12088. All frames are arranged in a cyclic order.
  12089. This command selects the frame ARG steps away in that order.
  12090. A negative ARG moves in the opposite order.
  12091. Fdevice-or-frame-p
  12092. Return non-nil if OBJECT is a device or frame.
  12093. Fdevice-or-frame-type
  12094. Return the type (e.g. `x' or `tty') of DEVICE-OR-FRAME.
  12095. DEVICE-OR-FRAME should be a device or a frame object.  See `device-type'
  12096. for a description of the possible types.
  12097. Ficonify-emacs
  12098. Replace every non-iconified FRAME with a *single* icon.
  12099. Iconified frames are left alone.  When XEmacs is in this
  12100. globally-iconified state, de-iconifying any emacs icon will uniconify
  12101. all frames that were visible, and iconify all frames that were not.
  12102. Fsuspend-or-iconify-emacs
  12103. Calls iconify-emacs if frame is an X frame, otherwise calls suspend-emacs
  12104. Vauto-raise-frame
  12105. *If true, frames will be raised to the top when selected.
  12106. Under X, most ICCCM-compliant window managers will have an option to do this
  12107. for you, but this variable is provided in case you're using a broken WM.
  12108. Vauto-lower-frame
  12109. *If true, frames will be lowered to the bottom when no longer selected.
  12110. Under X, most ICCCM-compliant window managers will have an option to do this
  12111. for you, but this variable is provided in case you're using a broken WM.
  12112. Fdefault-select-frame-hook
  12113. Implements the `auto-raise-frame' variable.
  12114. For use as the value of `select-frame-hook'.
  12115. Fdefault-deselect-frame-hook
  12116. Implements the `auto-lower-frame' variable.
  12117. For use as the value of `deselect-frame-hook'.
  12118. Vget-frame-for-buffer-default-frame-name
  12119. The default frame to select; see doc of `get-frame-for-buffer'.
  12120. Fget-frame-for-buffer-noselect
  12121. Return a frame in which to display BUFFER.
  12122. This is a subroutine of `get-frame-for-buffer' (which see).
  12123. Fget-frame-for-buffer
  12124. Select and return a frame in which to display BUFFER.
  12125. Normally, the buffer will simply be displayed in the current frame.
  12126. But if the symbol naming the major-mode of the buffer has a 'frame-name
  12127. property (which should be a symbol), then the buffer will be displayed in
  12128. a frame of that name.  If there is no frame of that name, then one is
  12129. created.  
  12130.  
  12131. If the major-mode doesn't have a 'frame-name property, then the frame
  12132. named by `get-frame-for-buffer-default-frame-name' will be used.  If
  12133. that is nil (the default) then the currently selected frame will used.
  12134.  
  12135. If the frame-name symbol has an 'instance-limit property (an integer)
  12136. then each time a buffer of the mode in question is displayed, a new frame
  12137. with that name will be created, until there are `instance-limit' of them.
  12138. If instance-limit is 0, then a new frame will be created each time.
  12139.  
  12140. If a buffer is already displayed in a frame, then `instance-limit' is 
  12141. ignored, and that frame is used.
  12142.  
  12143. If the frame-name symbol has a 'frame-defaults property, then that is
  12144. prepended to the `default-frame-alist' when creating a frame for the
  12145. first time.
  12146.  
  12147. This function may be used as the value of `pre-display-buffer-function', 
  12148. to cause the display-buffer function and its callers to exhibit the above
  12149. behavior.
  12150. Fframes-of-buffer
  12151. Return list of frames that BUFFER is currently being displayed on.
  12152. If the buffer is being displayed on the currently selected frame, that frame
  12153. is first in the list.  VISIBLE-ONLY will only list non-iconified frames.
  12154. Fshow-temp-buffer-in-current-frame
  12155. For use as the value of temp-buffer-show-function:
  12156. always displays the buffer in the current frame, regardless of the behavior
  12157. that would otherwise be introduced by the `pre-display-buffer-function', which
  12158. is normally set to `get-frame-for-buffer' (which see).
  12159. Fdelete-other-frames
  12160. Delete all but FRAME (or the selected frame).
  12161. Vtoolbar-help-enabled
  12162. If non-nil help is echoed for toolbar buttons.
  12163. Vtoolbar-icon-directory
  12164. Location of standard toolbar icon bitmaps.
  12165. Ftoolbar-make-button-list
  12166. Calls make-glyph on each arg and returns a list of the results.
  12167. Fone-window-p
  12168. Returns non-nil if the selected window is the only window (in its frame).
  12169. Optional arg NOMINI non-nil means don't count the minibuffer
  12170. even if it is active.
  12171.  
  12172. The optional arg ALL-FRAMES t means count windows on all frames.
  12173. If it is `visible', count windows on all visible frames.
  12174. ALL-FRAMES nil or omitted means count only the selected frame, 
  12175. plus the minibuffer it uses (which may be on another frame).
  12176. ALL-FRAMES = 0 means count windows on all visible and iconified frames.
  12177. If ALL-FRAMES is any other value, count only the selected frame.
  12178. Fwalk-windows
  12179. Cycle through all visible windows, calling PROC for each one.
  12180. PROC is called with a window as argument.
  12181. Optional second arg MINIBUF t means count the minibuffer window
  12182. even if not active.  If MINIBUF is neither t nor nil it means
  12183. not to count the minibuffer even if it is active.
  12184.  
  12185. Optional third arg ALL-FRAMES t means include all windows in all frames;
  12186. otherwise cycle within the selected frame.
  12187. Fcount-windows
  12188. Returns the number of visible windows.
  12189. Optional arg NO-MINI non-nil means don't count the minibuffer
  12190. even if it is active.
  12191. Fbalance-windows
  12192. Makes all visible windows the same height (approximately).
  12193. Vsplit-window-keep-point
  12194. *If non-nil, split windows keeps the original point in both children.
  12195. This is often more convenient for editing.
  12196. If nil, adjust point in each of the two windows to minimize redisplay.
  12197. This is convenient on slow terminals, but point can move strangely.
  12198. Fsplit-window-vertically
  12199. Split current window into two windows, one above the other.
  12200. The uppermost window gets ARG lines and the other gets the rest.
  12201. Negative arg means select the size of the lowermost window instead.
  12202. With no argument, split equally or close to it.
  12203. Both windows display the same buffer now current.
  12204.  
  12205. If the variable split-window-keep-point is non-nil, both new windows
  12206. will get the same value of point as the current window.  This is often
  12207. more convenient for editing.
  12208.  
  12209. Otherwise, we chose window starts so as to minimize the amount of
  12210. redisplay; this is convenient on slow terminals.  The new selected
  12211. window is the one that the current value of point appears in.  The
  12212. value of point can change if the text around point is hidden by the
  12213. new modeline.
  12214.  
  12215. Programs should probably use split-window instead of this.
  12216. Fsplit-window-horizontally
  12217. Split current window into two windows side by side.
  12218. This window becomes the leftmost of the two, and gets ARG columns.
  12219. Negative arg means select the size of the rightmost window instead.
  12220. No arg means split equally.
  12221. Fenlarge-window-horizontally
  12222. Make current window ARG columns wider.
  12223. Fshrink-window-horizontally
  12224. Make current window ARG columns narrower.
  12225. Fshrink-window-if-larger-than-buffer
  12226. Shrink the WINDOW to be as small as possible to display its contents.
  12227. Do not shrink to less than `window-min-height' lines.
  12228. Do nothing if the buffer contains more lines than the present window height,
  12229. or if some of the window's contents are scrolled out of view,
  12230. or if the window is not the full width of the frame,
  12231. or if the window is the only window of its frame.
  12232. Fbackward-other-window
  12233. Select the ARG'th different window on this frame, going backwards.
  12234. This is just like calling `other-window' with the arg negated.
  12235. Fwindows-of-buffer
  12236. Returns a list of windows that have BUFFER in them.
  12237. If BUFFER is not specified, the current buffer will be used.
  12238. Fbuffer-in-multiple-windows-p
  12239. Returns t if BUFFER is in multiple windows.
  12240. If BUFFER is not specified, the current buffer will be used.
  12241. Fwindow-list
  12242. Return a list of windows on FRAME, beginning with WINDOW.
  12243. FRAME and WINDOW default to the selected ones.  
  12244. Optional second arg MINIBUF t means count the minibuffer window
  12245. even if not active.  If MINIBUF is neither t nor nil it means
  12246. not to count the minibuffer even if it is active.
  12247. Fset-window-dedicated-p
  12248. Control whether WINDOW is dedicated to the buffer it displays.
  12249. If it is dedicated, Emacs will not automatically change
  12250. which buffer appears in it.
  12251. The second argument is the new value for the dedication flag;
  12252. non-nil means yes.
  12253. Fcommand-line-do-help
  12254. Print this message and exit.
  12255. Vdirectory-abbrev-alist
  12256. *Alist of abbreviations for file directories.
  12257. A list of elements of the form (FROM . TO), each meaning to replace
  12258. FROM with TO when it appears in a directory name.
  12259. This replacement is done when setting up the default directory of a
  12260. newly visited file.  *Every* FROM string should start with \\` or ^.
  12261.  
  12262. Use this feature when you have directories which you normally refer to
  12263. via absolute symbolic links or to eliminate automounter mount points
  12264. from the beginning of your filenames.  Make TO the name of the link,
  12265. and FROM the name it is linked to.
  12266. Vabbreviated-home-dir
  12267. The user's homedir abbreviated according to `directory-abbrev-alist'.
  12268. Fabbreviate-file-name
  12269. Return a version of FILENAME shortened using `directory-abbrev-alist'.
  12270. See \[describe-variable] directory-abbrev-alist RET for more information.
  12271. If optional argument HACK-HOMEDIR is non-nil, then This also substitutes
  12272. "~" for the user's home directory.
  12273. Vcommand-line-processed
  12274. t once command line has been processed
  12275. Vinhibit-startup-message
  12276. *Non-nil inhibits the initial startup message.
  12277. This is for use in your personal init file, once you are familiar
  12278. with the contents of the startup message.
  12279. Vinhibit-default-init
  12280. *Non-nil inhibits loading the `default' library.
  12281. Vcommand-switch-alist
  12282. Alist of command-line switches.
  12283. Elements look like (SWITCH-STRING . HANDLER-FUNCTION).
  12284. HANDLER-FUNCTION receives switch name as sole arg;
  12285. remaining command-line args are in the variable `command-line-args-left'.
  12286. Vcommand-line-args-left
  12287. List of command-line args not yet processed.
  12288. Vcommand-line-default-directory
  12289. Default directory to use for command line arguments.
  12290. This is normally copied from `default-directory' when XEmacs starts.
  12291. Vbefore-init-hook
  12292. Functions to call after handling urgent options but before init files.
  12293. The frame system uses this to open frames to display messages while
  12294. Emacs loads the user's initialization file.
  12295. Vafter-init-hook
  12296. Functions to call after loading the init file (`~/.emacs').
  12297. The call is not protected by a condition-case, so you can set `debug-on-error'
  12298. in `.emacs', and put all the actual code on `after-init-hook'.
  12299. Vterm-setup-hook
  12300. Functions to be called after loading terminal-specific Lisp code.
  12301. See `run-hooks'.  This variable exists for users to set,
  12302. so as to override the definitions made by the terminal-specific file.
  12303. Emacs never sets this variable itself.
  12304. Vkeyboard-type
  12305. The brand of keyboard you are using.
  12306. This variable is used to define
  12307. the proper function and keypad keys for use under X.  It is used in a
  12308. fashion analogous to the environment value TERM.
  12309. Vwindow-setup-hook
  12310. Normal hook run to initialize window system display.
  12311. Emacs runs this hook after processing the command line arguments and loading
  12312. the user's init file.
  12313. Vinitial-major-mode
  12314. Major mode command symbol to use for the initial *scratch* buffer.
  12315. Vinit-file-user
  12316. Identity of user whose `.emacs' file is or was read.
  12317. The value is nil if no init file is being used; otherwise, it may be either
  12318. the null string, meaning that the init file was taken from the user that
  12319. originally logged in, or it may be a string containing a user's name.
  12320.  
  12321. In either of the latter cases, `(concat "~" init-file-user "/")'
  12322. evaluates to the name of the directory where the `.emacs' file was
  12323. looked for.
  12324. Vsite-start-file
  12325. File containing site-wide run-time initializations.
  12326. This file is loaded at run-time before `~/.emacs'.  It contains inits
  12327. that need to be in place for the entire site, but which, due to their
  12328. higher incidence of change, don't make sense to load into emacs'
  12329. dumped image.  Thus, the run-time load order is: 1. file described in
  12330. this variable, if non-nil; 2. `~/.emacs'; 3. `default.el'.
  12331. Vuser-mail-address
  12332. Full mailing address of this user.
  12333. Vinit-file-loaded
  12334. True after the user's init file has been loaded (or suppressed with -q).
  12335. This will be true when `after-init-hook' is run and at all times
  12336. after, and will not be true at any time before.
  12337. Fcommand-line-do-funcall
  12338. Invoke the named lisp function with no arguments.
  12339. <function>
  12340. Fcommand-line-do-eval
  12341. Evaluate the lisp form.  Quote it carefully.
  12342. <form>
  12343. Fcommand-line-do-load
  12344. Load the named file of Lisp code into XEmacs.
  12345. <file>
  12346. Fcommand-line-do-insert
  12347. Insert file into the current buffer.
  12348. <file>
  12349. Fcommand-line-do-kill
  12350. Exit XEmacs.
  12351. Fcommand-line-do-version
  12352. Print version info and exit.
  12353. Fearly-error-handler
  12354. You should probably not be using this.
  12355. Vstartup-presentation-hack-keymap
  12356. Putting yesterday in the future tomorrow.
  12357. Vdefun-prompt-regexp
  12358. *Non-nil => regexp to ignore, before the character that starts a defun.
  12359. This is only necessary if the opening paren or brace is not in column 0.
  12360. See `beginning-of-defun'.
  12361. Vparens-require-spaces
  12362. Non-nil => `insert-parentheses' should insert whitespace as needed.
  12363. Fforward-sexp
  12364. Move forward across one balanced expression (sexp).
  12365. With argument, do it that many times.
  12366. Negative arg -N means move backward across N balanced expressions.
  12367. Fbackward-sexp
  12368. Move backward across one balanced expression (sexp).
  12369. With argument, do it that many times.
  12370. Negative arg -N means move forward across N balanced expressions.
  12371. Fmark-sexp
  12372. Set mark ARG sexps from point.
  12373. The place mark goes is the same place \[forward-sexp] would move to
  12374. with the same argument.
  12375. Repeat this command to mark more sexps in the same direction.
  12376. Fforward-list
  12377. Move forward across one balanced group of parentheses.
  12378. With argument, do it that many times.
  12379. Negative arg -N means move backward across N groups of parentheses.
  12380. Fbackward-list
  12381. Move backward across one balanced group of parentheses.
  12382. With argument, do it that many times.
  12383. Negative arg -N means move forward across N groups of parentheses.
  12384. Fdown-list
  12385. Move forward down one level of parentheses.
  12386. With argument, do this that many times.
  12387. A negative argument means move backward but still go down a level.
  12388. In Lisp programs, an argument is required.
  12389. Fbackward-up-list
  12390. Move backward out of one level of parentheses.
  12391. With argument, do this that many times.
  12392. A negative argument means move forward but still to a less deep spot.
  12393. In Lisp programs, an argument is required.
  12394. Fup-list
  12395. Move forward out of one level of parentheses.
  12396. With argument, do this that many times.
  12397. A negative argument means move backward but still to a less deep spot.
  12398. In Lisp programs, an argument is required.
  12399. Fkill-sexp
  12400. Kill the sexp (balanced expression) following the cursor.
  12401. With argument, kill that many sexps after the cursor.
  12402. Negative arg -N means kill N sexps before the cursor.
  12403. Fbackward-kill-sexp
  12404. Kill the sexp (balanced expression) preceding the cursor.
  12405. With argument, kill that many sexps before the cursor.
  12406. Negative arg -N means kill N sexps after the cursor.
  12407. Fbeginning-of-defun
  12408. Move backward to the beginning of a defun.
  12409. With argument, do it that many times.  Negative arg -N
  12410. means move forward to Nth following beginning of defun.
  12411. Returns t unless search stops due to beginning or end of buffer.
  12412.  
  12413. Normally a defun starts when there is an char with open-parenthesis
  12414. syntax at the beginning of a line.  If `defun-prompt-regexp' is
  12415. non-nil, then a string which matches that regexp may precede the
  12416. open-parenthesis, and point ends up at the beginning of the line.
  12417. Fbeginning-of-defun-raw
  12418. Move point to the character that starts a defun.
  12419. This is identical to beginning-of-defun, except that point does not move
  12420. to the beginning of the line when `defun-prompt-regexp' is non-nil.
  12421. Fend-of-defun
  12422. Move forward to next end of defun.  With argument, do it that many times.
  12423. Negative argument -N means move back to Nth preceding end of defun.
  12424.  
  12425. An end of a defun occurs right after the close-parenthesis that matches
  12426. the open-parenthesis that starts a defun; see `beginning-of-defun'.
  12427. Fmark-defun
  12428. Put mark at end of this defun, point at beginning.
  12429. The defun marked is the one that contains point or follows point.
  12430. Finsert-parentheses
  12431. Put parentheses around next ARG sexps.  Leave point after open-paren.
  12432. No argument is equivalent to zero: just insert `()' and leave point between.
  12433. If `parens-require-spaces' is non-nil, this command also inserts a space
  12434. before and after, depending on the surrounding characters.
  12435. Fmove-past-close-and-reindent
  12436. Move past next `)', delete indentation before it, then indent after it.
  12437. Flisp-complete-symbol
  12438. Perform completion on Lisp symbol preceding point.
  12439. That symbol is compared against the symbols that exist
  12440. and any additional characters determined by what is there
  12441. are inserted.
  12442. If the symbol starts just after an open-parenthesis,
  12443. only symbols with function definitions are considered.
  12444. Otherwise, all symbols with function definitions, values
  12445. or properties are considered.
  12446. Fforward-page
  12447. Move forward to page boundary.  With arg, repeat, or go back if negative.
  12448. A page boundary is any line whose beginning matches the regexp
  12449. `page-delimiter'.
  12450. Fbackward-page
  12451. Move backward to page boundary.  With arg, repeat, or go fwd if negative.
  12452. A page boundary is any line whose beginning matches the regexp
  12453. `page-delimiter'.
  12454. Fmark-page
  12455. Put mark at end of page, point at beginning.
  12456. A numeric arg specifies to move forward or backward by that many pages,
  12457. thus marking a page other than the one point was originally in.
  12458. Fnarrow-to-page
  12459. Make text outside current page invisible.
  12460. A numeric arg specifies to move forward or backward by that many pages,
  12461. thus showing a page other than the one point was originally in.
  12462. Fcount-lines-page
  12463. Report number of lines on current page, and how many are before or after point.
  12464. Fwhat-page
  12465. Print page and line number of point.
  12466. Vregister-alist
  12467. Alist of elements (NAME . CONTENTS), one for each Emacs register.
  12468. NAME is a character (a number).  CONTENTS is a string, number,
  12469. frame configuration, mark or list.
  12470. A list of strings represents a rectangle.
  12471. A list of the form (file . NAME) represents the file named NAME.
  12472. Fget-register
  12473. Return contents of Emacs register named CHAR, or nil if none.
  12474. Fset-register
  12475. Set contents of Emacs register named CHAR to VALUE.  Returns VALUE.
  12476. See the documentation of the variable `register-alist' for possible VALUEs.
  12477. Fpoint-to-register
  12478. Store current location of point in register REGISTER.
  12479. Argument is a character, naming the register.
  12480. Fwindow-configuration-to-register
  12481. Store the window configuration of the selected frame in register REGISTER.
  12482. Use \[jump-to-register] to restore the configuration.
  12483. Argument is a character, naming the register.
  12484. Fjump-to-register
  12485. Move point to location stored in a register.
  12486. If the register contains a file name, find that file.
  12487.  (To put a file name in a register, you must use `set-register'.)
  12488. If the register contains a window configuration (one frame) or a frame
  12489. configuration (all frames), restore that frame or all frames accordingly.
  12490. Argument is a character, naming the register.
  12491. Fview-register
  12492. Display what is contained in register named REGISTER.
  12493. REGISTER is a character.
  12494. Finsert-register
  12495. Insert contents of register REG.  REG is a character.
  12496. Normally puts point before and mark after the inserted text.
  12497. If optional second arg is non-nil, puts mark before and point after.
  12498. Interactively, second arg is non-nil if prefix arg is supplied.
  12499. Fcopy-to-register
  12500. Copy region into register REG.
  12501. With prefix arg, delete as well.
  12502. Called from program, takes four args:
  12503. REG, START, END and DELETE-FLAG.
  12504. START and END are buffer positions indicating what to copy.
  12505. Fappend-to-register
  12506. Append region to text in register REG.
  12507. With prefix arg, delete as well.
  12508. Called from program, takes four args:
  12509. REG, START, END and DELETE-FLAG.
  12510. START and END are buffer positions indicating what to append.
  12511. Fprepend-to-register
  12512. Prepend region to text in register REG.
  12513. With prefix arg, delete as well.
  12514. Called from program, takes four args:
  12515. REG, START, END and DELETE-FLAG.
  12516. START and END are buffer positions indicating what to prepend.
  12517. Fcopy-rectangle-to-register
  12518. Copy rectangular region into register REG.
  12519. With prefix arg, delete as well.
  12520. Called from program, takes four args:
  12521. REG, START, END and DELETE-FLAG.
  12522. START and END are buffer positions giving two corners of rectangle.
  12523. Viso8859/1-case-table
  12524. The case table for ISO-8859/1 characters.
  12525. Vparagraph-start
  12526. *Regexp for beginning of a line that starts OR separates paragraphs.
  12527. This regexp should match lines that separate paragraphs
  12528. and should also match lines that start a paragraph
  12529. (and are part of that paragraph).
  12530. The variable `paragraph-separate' specifies how to distinguish
  12531. lines that start paragraphs from lines that separate them.
  12532. Vparagraph-separate
  12533. *Regexp for beginning of a line that separates paragraphs.
  12534. If you change this, you may have to change paragraph-start also.
  12535. Vsentence-end
  12536. *Regexp describing the end of a sentence.
  12537. All paragraph boundaries also end sentences, regardless.
  12538.  
  12539. In order to be recognized as the end of a sentence, the ending period,
  12540. question mark, or exclamation point must be followed by two spaces,
  12541. unless it's inside some sort of quotes or parenthesis.
  12542. Vpage-delimiter
  12543. *Regexp describing line-beginnings that separate pages.
  12544. Vparagraph-ignore-fill-prefix
  12545. Non-nil means the paragraph commands are not affected by `fill-prefix'.
  12546. This is desirable in modes where blank lines are the paragraph delimiters.
  12547. Fforward-paragraph
  12548. Move forward to end of paragraph.
  12549. With arg N, do it N times; negative arg -N means move backward N paragraphs.
  12550.  
  12551. A line which `paragraph-start' matches either separates paragraphs
  12552. (if `paragraph-separate' matches it also) or is the first line of a paragraph.
  12553. A paragraph end is the beginning of a line which is not part of the paragraph
  12554. to which the end of the previous line belongs, or the end of the buffer.
  12555. Fbackward-paragraph
  12556. Move backward to start of paragraph.
  12557. With arg N, do it N times; negative arg -N means move forward N paragraphs.
  12558.  
  12559. A paragraph start is the beginning of a line which is a
  12560. `first-line-of-paragraph' or which is ordinary text and follows a
  12561. paragraph-separating line; except: if the first real line of a
  12562. paragraph is preceded by a blank line, the paragraph starts at that
  12563. blank line.
  12564.  
  12565. See `forward-paragraph' for more information.
  12566. Fmark-paragraph
  12567. Put point at beginning of this paragraph, mark at end.
  12568. The paragraph marked is the one that contains point or follows point.
  12569. Fkill-paragraph
  12570. Kill forward to end of paragraph.
  12571. With arg N, kill forward to Nth end of paragraph;
  12572. negative arg -N means kill backward to Nth start of paragraph.
  12573. Fbackward-kill-paragraph
  12574. Kill back to start of paragraph.
  12575. With arg N, kill back to Nth start of paragraph;
  12576. negative arg -N means kill forward to Nth end of paragraph.
  12577. Ftranspose-paragraphs
  12578. Interchange this (or next) paragraph with previous one.
  12579. Fforward-sentence
  12580. Move forward to next `sentence-end'.  With argument, repeat.
  12581. With negative argument, move backward repeatedly to `sentence-beginning'.
  12582.  
  12583. The variable `sentence-end' is a regular expression that matches ends
  12584. of sentences.  Also, every paragraph boundary terminates sentences as
  12585. well.
  12586. Fbackward-sentence
  12587. Move backward to start of sentence.  With arg, do it arg times.
  12588. See `forward-sentence' for more information.
  12589. Fkill-sentence
  12590. Kill from point to end of sentence.
  12591. With arg, repeat; negative arg -N means kill back to Nth start of sentence.
  12592. Fbackward-kill-sentence
  12593. Kill back from point to start of sentence.
  12594. With arg, repeat, or kill forward to Nth end of sentence if negative arg -N.
  12595. Fmark-end-of-sentence
  12596. Put mark at end of sentence.  Arg works as in `forward-sentence'.
  12597. Ftranspose-sentences
  12598. Interchange this (next) and previous sentence.
  12599. Vlisp-mode-syntax-table
  12600.  
  12601. Vemacs-lisp-mode-syntax-table
  12602.  
  12603. Vlisp-mode-abbrev-table
  12604.  
  12605. Vshared-lisp-mode-map
  12606. Keymap for commands shared by all sorts of Lisp modes.
  12607. Vemacs-lisp-mode-map
  12608. Keymap for Emacs Lisp mode.
  12609. All commands in shared-lisp-mode-map are inherited by this map.
  12610. Femacs-lisp-mode
  12611. Major mode for editing Lisp code to run in Emacs.
  12612. Commands:
  12613. Delete converts tabs to spaces as it moves back.
  12614. Blank lines separate paragraphs.  Semicolons start comments.
  12615. \{emacs-lisp-mode-map}
  12616. Entry to this mode calls the value of `emacs-lisp-mode-hook'
  12617. if that value is non-nil.
  12618. Vlisp-mode-map
  12619. Keymap for ordinary Lisp mode.
  12620. All commands in `shared-lisp-mode-map' are inherited by this map.
  12621. Flisp-mode
  12622. Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp.
  12623. Commands:
  12624. Delete converts tabs to spaces as it moves back.
  12625. Blank lines separate paragraphs.  Semicolons start comments.
  12626. \{lisp-mode-map}
  12627. Note that `run-lisp' may be used either to start an inferior Lisp job
  12628. or to switch back to an existing one.
  12629.  
  12630. Entry to this mode calls the value of `lisp-mode-hook'
  12631. if that value is non-nil.
  12632. Flisp-send-defun
  12633. Send the current defun to the Lisp process made by \[run-lisp].
  12634. Vlisp-interaction-mode-map
  12635. Keymap for Lisp Interaction moe.
  12636. All commands in `emacs-lisp-mode-map' are inherited by this map.
  12637. Flisp-interaction-mode
  12638. Major mode for typing and evaluating Lisp forms.
  12639. Like Lisp mode except that \[eval-print-last-sexp] evals the Lisp expression
  12640. before point, and prints its value into the buffer, advancing point.
  12641.  
  12642. Commands:
  12643. Delete converts tabs to spaces as it moves back.
  12644. Paragraphs are separated only by blank lines.  Semicolons start comments.
  12645. \{lisp-interaction-mode-map}
  12646. Entry to this mode calls the value of `lisp-interaction-mode-hook'
  12647. if that value is non-nil.
  12648. Feval-print-last-sexp
  12649. Evaluate sexp before point; print value into current buffer.
  12650. Feval-interactive
  12651. Like `eval' except that it transforms defvars to defconsts.
  12652. Feval-last-sexp
  12653. Evaluate sexp before point; print value in minibuffer.
  12654. With argument, print output into current buffer.
  12655. Feval-defun
  12656. Evaluate defun that point is in or before.
  12657. Print value in minibuffer.
  12658. With argument, insert value in current buffer after the defun.
  12659. Flisp-indent-for-comment
  12660. Indent this line's comment appropriately, or insert an empty comment.
  12661. If adding a new comment on a blank line, use `block-comment-start' instead
  12662. of `comment-start' to open the comment.
  12663. Vlisp-indent-offset
  12664.  
  12665. Vlisp-indent-function
  12666.  
  12667. Flisp-indent-line
  12668. Indent current line as Lisp code.
  12669. With argument, indent any additional lines of the same expression
  12670. rigidly along with this one.
  12671. Fcalculate-lisp-indent
  12672. Return appropriate indentation for current line as Lisp code.
  12673. In usual case returns an integer: the column to indent to.
  12674. Can instead return a list, whose car is the column to indent to.
  12675. This means that following lines at the same level of indentation
  12676. should not necessarily be indented the same way.
  12677. The second element of the list is the buffer position
  12678. of the start of the containing expression.
  12679. Vlisp-body-indent
  12680. Number of columns to indent the second line of a `(def...)' form.
  12681. Findent-sexp
  12682. Indent each line of the list starting just after point.
  12683. If optional arg ENDPOS is given, indent each line, stopping when
  12684. ENDPOS is encountered.
  12685. Flisp-fill-paragraph
  12686. Like \[fill-paragraph], but handle Emacs Lisp comments.
  12687. If any of the current line is a comment, fill the comment or the
  12688. paragraph of it that point is in, preserving the comment's indentation
  12689. and initial semicolons.
  12690. Findent-code-rigidly
  12691. Indent all lines of code, starting in the region, sideways by ARG columns.
  12692. Does not affect lines starting inside comments or strings,
  12693. assuming that the start of the region is not inside them.
  12694. Called from a program, takes args START, END, COLUMNS and NOCHANGE-REGEXP.
  12695. The last is a regexp which, if matched at the beginning of a line,
  12696. means don't indent that line.
  12697. Vtext-mode-syntax-table
  12698. Syntax table used while in text mode.
  12699. Vtext-mode-abbrev-table
  12700. Abbrev table used while in text mode.
  12701. Vtext-mode-map
  12702. Keymap for Text mode.
  12703. Many other modes, such as Mail mode, Outline mode and Indented Text mode,
  12704. inherit all the commands defined in this map.
  12705. Ftext-mode
  12706. Major mode for editing text intended for humans to read.
  12707. Special commands:\{text-mode-map}
  12708. Turning on Text mode calls the value of the variable `text-mode-hook',
  12709. if that value is non-nil.
  12710. Vindented-text-mode-map
  12711. Keymap for Indented Text mode.
  12712. All the commands defined in Text mode are inherited unless overridden.
  12713. Findented-text-mode
  12714. Major mode for editing text with indented paragraphs.
  12715. In this mode, paragraphs are delimited only by blank lines.
  12716. You can thus get the benefit of adaptive filling
  12717.  (see the variable `adaptive-fill-mode').
  12718. \{indented-text-mode-map}
  12719. Turning on `indented-text-mode' calls the value of the variable
  12720. `text-mode-hook', if that value is non-nil.
  12721. Fcenter-paragraph
  12722. Center each nonblank line in the paragraph at or after point.
  12723. See `center-line' for more info.
  12724. Fcenter-region
  12725. Center each nonblank line starting in the region.
  12726. See `center-line' for more info.
  12727. Fcenter-line
  12728. Center the line point is on, within the width specified by `fill-column'.
  12729. This means adjusting the indentation so that it equals
  12730. the distance between the end of the text and `fill-column'.
  12731. Vfill-individual-varying-indent
  12732. *Controls criterion for a new paragraph in `fill-individual-paragraphs'.
  12733. Non-nil means changing indent doesn't end a paragraph.
  12734. That mode can handle paragraphs with extra indentation on the first line,
  12735. but it requires separator lines between paragraphs.
  12736. A value of nil means that any change in indentation starts a new paragraph.
  12737. Vsentence-end-double-space
  12738. *Non-nil means a single space does not end a sentence.
  12739. Fset-fill-prefix
  12740. Set the fill prefix to the current line up to point.
  12741. Filling expects lines to start with the fill prefix
  12742. and reinserts the fill prefix in each resulting line.
  12743. Vadaptive-fill-mode
  12744. *Non-nil means determine a paragraph's fill prefix from its text.
  12745. Vadaptive-fill-regexp
  12746. *Regexp to match text at start of line that constitutes indentation.
  12747. If Adaptive Fill mode is enabled, whatever text matches this pattern
  12748. on the second line of a paragraph is used as the standard indentation
  12749. for the paragraph.
  12750. Ffill-region-as-paragraph
  12751. Fill region as one paragraph: break lines to fit `fill-column'.
  12752. Prefix arg means justify too.
  12753. If `sentence-end-double-space' is non-nil, then period followed by one
  12754. space does not end a sentence, so don't break a line there.
  12755. From program, pass args FROM, TO and JUSTIFY-FLAG.
  12756. Ffill-paragraph
  12757. Fill paragraph at or after point.  Prefix arg means justify as well.
  12758. If `sentence-end-double-space' is non-nil, then period followed by one
  12759. space does not end a sentence, so don't break a line there.
  12760. Ffill-region
  12761. Fill each of the paragraphs in the region.
  12762. Prefix arg (non-nil third arg, if called from program) means justify as well.
  12763. If `sentence-end-double-space' is non-nil, then period followed by one
  12764. space does not end a sentence, so don't break a line there.
  12765. Ffill-paragraph-or-region
  12766. Fill the current region, if it's active; otherwise, fill the paragraph.
  12767. See `fill-paragraph' and `fill-region' for more information.
  12768. Fjustify-current-line
  12769. Add spaces to line point is in, so it ends at `fill-column'.
  12770. Ffill-nonuniform-paragraphs
  12771. Fill paragraphs within the region, allowing varying indentation within each.
  12772. This command divides the region into "paragraphs",
  12773. only at paragraph-separator lines, then fills each paragraph
  12774. using as the fill prefix the smallest indentation of any line
  12775. in the paragraph.
  12776.  
  12777. When calling from a program, pass range to fill as first two arguments.
  12778.  
  12779. Optional third and fourth arguments JUSTIFY-FLAG and MAIL-FLAG:
  12780. JUSTIFY-FLAG to justify paragraphs (prefix arg),
  12781. MAIL-FLAG for a mail message, i. e. don't fill header lines.
  12782. Ffill-individual-paragraphs
  12783. Fill paragraphs of uniform indentation within the region.
  12784. This command divides the region into "paragraphs",
  12785. treating every change in indentation level as a paragraph boundary,
  12786. then fills each paragraph using its indentation level as the fill prefix.
  12787.  
  12788. When calling from a program, pass range to fill as first two arguments.
  12789.  
  12790. Optional third and fourth arguments JUSTIFY-FLAG and MAIL-FLAG:
  12791. JUSTIFY-FLAG to justify paragraphs (prefix arg),
  12792. MAIL-FLAG for a mail message, i. e. don't fill header lines.
  12793. Vsearch-last-string
  12794. Last string search for by a search command.
  12795. This does not include direct calls to the primitive search functions,
  12796. and does not include searches that are aborted.
  12797. Vsearch-last-regexp
  12798. Last string searched for by a regexp search command.
  12799. This does not include direct calls to the primitive search functions,
  12800. and does not include searches that are aborted.
  12801. Vsearch-exit-option
  12802. Non-nil means random control characters terminate incremental search.
  12803. Vsearch-slow-window-lines
  12804. *Number of lines in slow search display windows.
  12805. These are the short windows used during incremental search on slow terminals.
  12806. Negative means put the slow search window at the top (normally it's at bottom)
  12807. and the value is minus the number of lines.
  12808. Vsearch-slow-speed
  12809. *Highest terminal speed at which to use "slow" style incremental search.
  12810. This is the style where a one-line window is created to show the line
  12811. that the search has reached.
  12812. Vsearch-caps-disable-folding
  12813. *If non-nil, upper case chars disable case fold searching.
  12814. This does not apply to "yanked" strings.
  12815. Vsearch-nonincremental-instead
  12816. *If non-nil, do a nonincremental search instead if exiting immediately.
  12817. Vsearch-whitespace-regexp
  12818. *If non-nil, regular expression to match a sequence of whitespace chars.
  12819. Vsearch-ring
  12820. List of search string sequences.
  12821. Vregexp-search-ring
  12822. List of regular expression search string sequences.
  12823. Vsearch-ring-max
  12824. *Maximum length of search ring before oldest elements are thrown away.
  12825. Vregexp-search-ring-max
  12826. *Maximum length of regexp search ring before oldest elements are thrown away.
  12827. Vsearch-ring-yank-pointer
  12828. The tail of the search ring whose car is the last thing searched for.
  12829. Vregexp-search-ring-yank-pointer
  12830. The tail of the regular expression search ring whose car is the last
  12831. thing searched for.
  12832. Visearch-mode-map
  12833. Keymap for isearch-mode.
  12834. Vminibuffer-local-isearch-map
  12835. Keymap for editing isearch strings in the minibuffer.
  12836. Visearch-mode-hook
  12837. Function(s) to call after starting up an incremental search.
  12838. Visearch-mode-end-hook
  12839. Function(s) to call after terminating an incremental search.
  12840. Fisearch-forward
  12841. Do incremental search forward.
  12842. With a prefix argument, do an incremental regular expression search instead.
  12843. \<isearch-mode-map>
  12844. As you type characters, they add to the search string and are found.
  12845. The following non-printing keys are bound in `isearch-mode-map'.  
  12846.  
  12847. Type \[isearch-delete-char] to cancel characters from end of search string.
  12848. Type \[isearch-exit] to exit, leaving point at location found.
  12849. Type LFD (C-j) to match end of line.
  12850. Type \[isearch-repeat-forward] to search again forward, \[isearch-repeat-backward] to search again backward.
  12851. Type \[isearch-yank-word] to yank word from buffer onto end of search string and search for it.
  12852. Type \[isearch-yank-line] to yank rest of line onto end of search string and search for it.
  12853. Type \[isearch-quote-char] to quote control character to search for it.
  12854. Type \[isearch-whitespace-chars] to match all whitespace chars in regexp.
  12855. \[isearch-abort] while searching or when search has failed cancels input back to what has
  12856.  been found successfully.
  12857. \[isearch-abort] when search is successful aborts and moves point to starting point.
  12858.  
  12859. Also supported is a search ring of the previous 16 search strings.
  12860. Type \[isearch-ring-advance] to search for the next item in the search ring.
  12861. Type \[isearch-ring-retreat] to search for the previous item in the search ring.
  12862. Type \[isearch-complete] to complete the search string using the search ring.
  12863.  
  12864. The above keys are bound in the isearch-mode-map.  To change the keys which
  12865.  are special to isearch-mode, simply change the bindings in that map.
  12866.  
  12867. Other control and meta characters terminate the search
  12868.  and are then executed normally (depending on `search-exit-option').
  12869.  
  12870. If this function is called non-interactively, it does not return to
  12871. the calling function until the search is done.
  12872.  
  12873. The bindings, more precisely:
  12874. \{isearch-mode-map}
  12875. Fisearch-forward-regexp
  12876. Do incremental search forward for regular expression.
  12877. Like ordinary incremental search except that your input
  12878. is treated as a regexp.  See \[isearch-forward] for more info.
  12879. Fisearch-backward
  12880. Do incremental search backward.
  12881. With a prefix argument, do an incremental regular expression search instead.
  12882. See \[isearch-forward] for more information.
  12883. Fisearch-backward-regexp
  12884. Do incremental search backward for regular expression.
  12885. Like ordinary incremental search except that your input
  12886. is treated as a regexp.  See \[isearch-forward] for more info.
  12887. Fisearch-mode
  12888. Start isearch minor mode.  Called by isearch-forward, etc.
  12889. Fisearch-exit
  12890. Exit search normally.
  12891. However, if this is the first command after starting incremental
  12892. search and `search-nonincremental-instead' is non-nil, do an
  12893. incremental search via `isearch-edit-string'.
  12894. Fisearch-edit-string
  12895. Edit the search string in the minibuffer.
  12896. The following additional command keys are active while editing.
  12897. \<minibuffer-local-isearch-map>
  12898. \[exit-minibuffer] to exit editing and resume incremental searching.
  12899. \[isearch-forward-exit-minibuffer] to resume isearching forward.
  12900. \[isearch-backward-exit-minibuffer] to resume isearching backward.
  12901. \[isearch-ring-advance-edit] to replace the search string with the next item in the search ring.
  12902. \[isearch-ring-retreat-edit] to replace the search string with the next item in the search ring.
  12903. \[isearch-complete-edit] to complete the search string from the search ring.
  12904. Fisearch-abort
  12905. Quit incremental search mode if searching is successful, signalling quit.
  12906. Otherwise, revert to previous successful search and continue searching.
  12907. Use `isearch-exit' to quit without signalling.
  12908. Fisearch-repeat-forward
  12909. Repeat incremental search forwards.
  12910. Fisearch-repeat-backward
  12911. Repeat incremental search backwards.
  12912. Fisearch-toggle-regexp
  12913. Toggle regexp searching on or off.
  12914. Fisearch-delete-char
  12915. Discard last input item and move point back.  
  12916. If no previous match was done, just beep.
  12917. Fisearch-yank-word
  12918. Pull next word from buffer into search string.
  12919. Fisearch-yank-line
  12920. Pull rest of line from buffer into search string.
  12921. Fisearch-yank-sexp
  12922. Pull next expression from buffer into search string.
  12923. Fisearch-yank-x-selection
  12924. Pull the current X selection into the search string.
  12925. Fisearch-yank-x-clipboard
  12926. Pull the current X clipboard selection into the search string.
  12927. Fisearch-*-char
  12928. Handle * and ? specially in regexps.
  12929. Fisearch-|-char
  12930. If in regexp search, jump to the barrier.
  12931. Fisearch-quote-char
  12932. Quote special characters for incremental search.
  12933. Fisearch-return-char
  12934. Convert return into newline for incremental search.
  12935. Obsolete.
  12936. Fisearch-printing-char
  12937. Any other printing character => add it to the search string and search.
  12938. Fisearch-whitespace-chars
  12939. Match all whitespace chars, if in regexp mode.
  12940. Vsearch-ring-update
  12941. *Non-nil if advancing or retreating in the search ring should cause search.
  12942. Default nil means edit the string from the search ring first.
  12943. Fisearch-ring-advance
  12944. Advance to the next search string in the ring.
  12945. Fisearch-ring-retreat
  12946. Retreat to the previous search string in the ring.
  12947. Fisearch-ring-adjust-edit
  12948. Use the next or previous search string in the ring while in minibuffer.
  12949. Fisearch-ring-retreat-edit
  12950. Retreat to the previous search string in the ring while in the minibuffer.
  12951. Fisearch-complete
  12952. Complete the search string from the strings on the search ring.
  12953. The completed string is then editable in the minibuffer.
  12954. If there is no completion possible, say so and continue searching.
  12955. Fisearch-complete-edit
  12956. Same as `isearch-complete' except in the minibuffer.
  12957. Visearch-highlight
  12958. *Whether isearch and query-replace should highlight the text which 
  12959. currently matches the search-string.
  12960. Fisearch-no-upper-case-p
  12961. Return t if there are no upper case chars in string.
  12962. But upper case chars preceeded by \ do not count since they
  12963. have special meaning in a regexp.
  12964. Fcopy-from-above-command
  12965. Copy characters from previous nonblank line, starting just above point.
  12966. Copy ARG characters, but not past the end of that line.
  12967. If no argument given, copy the entire rest of the line.
  12968. The characters copied are inserted in the buffer before point.
  12969. Fadd-minor-mode
  12970. Add a minor mode to `minor-mode-alist' and `minor-mode-map-alist'.
  12971. TOGGLE is a symbol which is used as the variable which toggle the minor mode,
  12972. NAME is the name that should appear in the modeline (it should be a string
  12973. beginning with a space), KEYMAP is a keymap to make active when the minor
  12974. mode is active, and AFTER is the toggling symbol used for another minor
  12975. mode.  If AFTER is non-nil, then it is used to position the new mode in the
  12976. minor-mode alists.
  12977.  
  12978. Example:  (add-minor-mode 'view-minor-mode " View" view-mode-map)
  12979. Vc-inhibit-startup-warnings-p
  12980. *If non-nil, inhibits start up compatibility warnings.
  12981. Vc-strict-syntax-p
  12982. *If non-nil, all syntactic symbols must be found in `c-offsets-alist'.
  12983. If the syntactic symbol for a particular line does not match a symbol
  12984. in the offsets alist, an error is generated, otherwise no error is
  12985. reported and the syntactic symbol is ignored.
  12986. Vc-echo-syntactic-information-p
  12987. *If non-nil, syntactic info is echoed when the line is indented.
  12988. Vc-basic-offset
  12989. *Amount of basic offset used by + and - symbols in `c-offsets-alist'.
  12990. Vc-offsets-alist
  12991. *Association list of syntactic element symbols and indentation offsets.
  12992. As described below, each cons cell in this list has the form:
  12993.  
  12994.     (SYNTACTIC-SYMBOL . OFFSET)
  12995.  
  12996. When a line is indented, cc-mode first determines the syntactic
  12997. context of the line by generating a list of symbols called syntactic
  12998. elements.  This list can contain more than one syntactic element and
  12999. the global variable `c-syntactic-context' contains the context list
  13000. for the line being indented.  Each element in this list is actually a
  13001. cons cell of the syntactic symbol and a buffer position.  This buffer
  13002. position is call the relative indent point for the line.  Some
  13003. syntactic symbols may not have a relative indent point associated with
  13004. them.
  13005.  
  13006. After the syntactic context list for a line is generated, cc-mode
  13007. calculates the absolute indentation for the line by looking at each
  13008. syntactic element in the list.  First, it compares the syntactic
  13009. element against the SYNTACTIC-SYMBOL's in `c-offsets-alist'.  When it
  13010. finds a match, it adds the OFFSET to the column of the relative indent
  13011. point.  The sum of this calculation for each element in the syntactic
  13012. list is the absolute offset for line being indented.
  13013.  
  13014. If the syntactic element does not match any in the `c-offsets-alist',
  13015. an error is generated if `c-strict-syntax-p' is non-nil, otherwise
  13016. the element is ignored.
  13017.  
  13018. Actually, OFFSET can be an integer, a function, a variable, or one of
  13019. the following symbols: `+', `-', `++', `--', `*', or `/'.  These
  13020. latter designate positive or negative multiples of `c-basic-offset',
  13021. respectively: *1, *-1, *2, *-2, *0.5, and *-0.5. If OFFSET is a
  13022. function, it is called with a single argument containing the cons of
  13023. the syntactic element symbol and the relative indent point.  The
  13024. function should return an integer offset.
  13025.  
  13026. Here is the current list of valid syntactic element symbols:
  13027.  
  13028.  string                 -- inside multi-line string
  13029.  c                      -- inside a multi-line C style block comment
  13030.  defun-open             -- brace that opens a function definition
  13031.  defun-close            -- brace that closes a function definition
  13032.  defun-block-intro      -- the first line in a top-level defun
  13033.  class-open             -- brace that opens a class definition
  13034.  class-close            -- brace that closes a class definition
  13035.  inline-open            -- brace that opens an in-class inline method
  13036.  inline-close           -- brace that closes an in-class inline method
  13037.  ansi-funcdecl-cont     -- the nether region between an ANSI function
  13038.                            declaration and the defun opening brace
  13039.  knr-argdecl-intro      -- first line of a K&R C argument declaration
  13040.  knr-argdecl            -- subsequent lines in a K&R C argument declaration
  13041.  topmost-intro          -- the first line in a topmost construct definition
  13042.  topmost-intro-cont     -- topmost definition continuation lines
  13043.  member-init-intro      -- first line in a member initialization list
  13044.  member-init-cont       -- subsequent member initialization list lines
  13045.  inher-intro            -- first line of a multiple inheritance list
  13046.  inher-cont             -- subsequent multiple inheritance lines
  13047.  block-open             -- statement block open brace
  13048.  block-close            -- statement block close brace
  13049.  brace-list-open        -- open brace of an enum or static array list
  13050.  brace-list-close       -- close brace of an enum or static array list
  13051.  brace-list-intro       -- first line in an enum or static array list
  13052.  brace-list-entry       -- subsequent lines in an enum or static array list
  13053.  statement              -- a C/C++/ObjC statement
  13054.  statement-cont         -- a continuation of a C/C++/ObjC statement
  13055.  statement-block-intro  -- the first line in a new statement block
  13056.  statement-case-intro   -- the first line in a case `block'
  13057.  statement-case-open    -- the first line in a case block starting with brace
  13058.  substatement           -- the first line after an if/while/for/do/else
  13059.  substatement-open      -- the brace that opens a substatement block
  13060.  case-label             -- a case or default label
  13061.  access-label           -- C++ private/protected/public access label
  13062.  label                  -- any non-special C/C++/ObjC label
  13063.  do-while-closure       -- the `while' that ends a do/while construct
  13064.  else-clause            -- the `else' of an if/else construct
  13065.  comment-intro          -- a line containing only a comment introduction
  13066.  arglist-intro          -- the first line in an argument list
  13067.  arglist-cont           -- subsequent argument list lines when no
  13068.                            arguments follow on the same line as the
  13069.                            the arglist opening paren
  13070.  arglist-cont-nonempty  -- subsequent argument list lines when at
  13071.                            least one argument follows on the same
  13072.                            line as the arglist opening paren
  13073.  arglist-close          -- the solo close paren of an argument list
  13074.  stream-op              -- lines continuing a stream operator construct
  13075.  inclass                -- the construct is nested inside a class definition
  13076.  cpp-macro              -- the start of a cpp macro
  13077.  friend                 -- a C++ friend declaration
  13078.  objc-method-intro      -- the first line of an Objective-C method definition
  13079.  objc-method-args-cont  -- lines continuing an Objective-C method definition
  13080.  objc-method-call-cont  -- lines continuing an Objective-C method call
  13081.  
  13082. Vc-tab-always-indent
  13083. *Controls the operation of the TAB key.
  13084. If t, hitting TAB always just indents the current line.  If nil,
  13085. hitting TAB indents the current line if point is at the left margin or
  13086. in the line's indentation, otherwise it insert a real tab character.
  13087. If other than nil or t, then tab is inserted only within literals
  13088. -- defined as comments and strings -- and inside preprocessor
  13089. directives, but line is always reindented.
  13090.  
  13091. Note that indentation of lines containing only comments is also
  13092. controlled by the `c-comment-only-line-offset' variable.
  13093. Vc-comment-only-line-offset
  13094. *Extra offset for line which contains only the start of a comment.
  13095. Can contain an integer or a cons cell of the form:
  13096.  
  13097.  (NON-ANCHORED-OFFSET . ANCHORED-OFFSET)
  13098.  
  13099. Where NON-ANCHORED-OFFSET is the amount of offset given to
  13100. non-column-zero anchored comment-only lines, and ANCHORED-OFFSET is
  13101. the amount of offset to give column-zero anchored comment-only lines.
  13102. Just an integer as value is equivalent to (<val> . -1000).
  13103. Vc-indent-comments-syntactically-p
  13104. *Specifies how comment-only lines should be indented.
  13105. When this variable is non-nil, comment-only lines are indented
  13106. according to syntactic analysis via `c-offsets-alist', even when
  13107. \[indent-for-comment] is used.
  13108. Vc-block-comments-indent-p
  13109. *Specifies how to re-indent C style block comments.
  13110.  
  13111. Examples of the supported styles of C block comment indentation are
  13112. shown below.  When this variable is nil, block comments are indented
  13113. as shown in styles 1 through 4.  If this variable is non-nil, block
  13114. comments are indented as shown in style 5.
  13115.  
  13116. Note that cc-mode does not automatically insert any stars or block
  13117. comment delimiters.  You must type these in manually.  This variable
  13118. only controls how the lines within the block comment are indented when
  13119. you hit ``\[c-indent-command]''.
  13120.  
  13121.  style 1:    style 2 (GNU):    style 3:     style 4:     style 5:
  13122.  /*          /* Blah           /*           /*           /*
  13123.     blah        blah.  */       * blah      ** blah      blah
  13124.     blah                        * blah      ** blah      blah
  13125.     */                          */          */           */
  13126. Vc-cleanup-list
  13127. *List of various C/C++/ObjC constructs to "clean up".
  13128. These clean ups only take place when the auto-newline feature is turned
  13129. on, as evidenced by the `/a' or `/ah' appearing next to the mode name.
  13130. Valid symbols are:
  13131.  
  13132.  brace-else-brace    -- cleans up `} else {' constructs by placing entire
  13133.                         construct on a single line.  This clean up only
  13134.                         takes place when there is nothing but white
  13135.                         space between the braces and the `else'.  Clean
  13136.             up occurs when the open-brace after the `else'
  13137.             is typed.
  13138.  empty-defun-braces  -- cleans up empty defun braces by placing the
  13139.                         braces on the same line.  Clean up occurs when
  13140.             the defun closing brace is typed.
  13141.  defun-close-semi    -- cleans up the terminating semi-colon on defuns
  13142.             by placing the semi-colon on the same line as
  13143.             the closing brace.  Clean up occurs when the
  13144.             semi-colon is typed.
  13145.  list-close-comma    -- cleans up commas following braces in array
  13146.                         and aggregate initializers.  Clean up occurs
  13147.             when the comma is typed.
  13148.  scope-operator      -- cleans up double colons which may designate
  13149.             a C++ scope operator split across multiple
  13150.             lines. Note that certain C++ constructs can
  13151.             generate ambiguous situations.  This clean up
  13152.             only takes place when there is nothing but
  13153.             whitespace between colons. Clean up occurs
  13154.             when the second colon is typed.
  13155. Vc-hanging-braces-alist
  13156. *Controls the insertion of newlines before and after braces.
  13157. This variable contains an association list with elements of the
  13158. following form: (SYNTACTIC-SYMBOL . ACTION).
  13159.  
  13160. When a brace (either opening or closing) is inserted, the syntactic
  13161. context it defines is looked up in this list, and if found, the
  13162. associated ACTION is used to determine where newlines are inserted.
  13163. If the context is not found, the default is to insert a newline both
  13164. before and after the brace.
  13165.  
  13166. SYNTACTIC-SYMBOL can be any of: defun-open, defun-close, class-open,
  13167. class-close, inline-open, inline-close, block-open, block-close,
  13168. substatement-open, statement-case-open, brace-list-open,
  13169. brace-list-close, brace-list-intro, or brace-list-entry. See
  13170. `c-offsets-alist' for details.
  13171.  
  13172. ACTION can be either a function symbol or a list containing any
  13173. combination of the symbols `before' or `after'.  If the list is empty,
  13174. no newlines are inserted either before or after the brace.
  13175.  
  13176. When ACTION is a function symbol, the function is called with a two
  13177. arguments: the syntactic symbol for the brace and the buffer position
  13178. at which the brace was inserted.  The function must return a list as
  13179. described in the preceding paragraph.  Note that during the call to
  13180. the function, the variable `c-syntactic-context' is set to the entire
  13181. syntactic context for the brace line.
  13182. Vc-hanging-colons-alist
  13183. *Controls the insertion of newlines before and after certain colons.
  13184. This variable contains an association list with elements of the
  13185. following form: (SYNTACTIC-SYMBOL . ACTION).
  13186.  
  13187. See the variable `c-hanging-braces-alist' for the semantics of this
  13188. variable.  Note however that making ACTION a function symbol is
  13189. currently not supported for this variable.
  13190. Vc-hanging-semi&comma-criteria
  13191. *List of functions that decide whether to insert a newline or not.
  13192. The functions in this list are called, in order, whenever the
  13193. auto-newline minor mode is activated (as evidenced by a `/a' or `/ah'
  13194. string in the mode line), and a semicolon or comma is typed (see
  13195. `c-electric-semi&comma').  Each function in this list is called with
  13196. no arguments, and should return one of the following values:
  13197.  
  13198.   nil             -- no determination made, continue checking
  13199.   'stop           -- do not insert a newline, and stop checking
  13200.   (anything else) -- insert a newline, and stop checking
  13201.  
  13202. If every function in the list is called with no determination made,
  13203. then no newline is inserted.
  13204. Vc-hanging-comment-ender-p
  13205. *If nil, `c-fill-paragraph' leaves C block comment enders on their own line.
  13206. Default value is t, which inhibits leaving block comment ending string
  13207. `*/' on a line by itself.  This is BOCM's sole behavior.
  13208. Vc-backslash-column
  13209. *Column to insert backslashes when macroizing a region.
  13210. Vc-special-indent-hook
  13211. *Hook for user defined special indentation adjustments.
  13212. This hook gets called after a line is indented by the mode.
  13213. Vc-delete-function
  13214. *Function called by `c-electric-delete' when deleting characters.
  13215. Vc-electric-pound-behavior
  13216. *List of behaviors for electric pound insertion.
  13217. Only currently supported behavior is `alignleft'.
  13218. Vc-recognize-knr-p
  13219. *If non-nil, `c-mode' and `objc-mode' will recognize K&R constructs.
  13220. This variable is needed because of ambiguities in C syntax that make
  13221. fast recognition of K&R constructs problematic, and slow.  If you are
  13222. coding with ANSI prototypes, set this variable to nil to speed up
  13223. recognition of certain constructs.  By setting this variable to nil, I
  13224. have seen an increase of 20 times under some circumstance.
  13225. Vc-progress-interval
  13226. *Interval used to update progress status during long re-indentation.
  13227. If a number, percentage complete gets updated after each interval of
  13228. that many seconds.   Set to nil to inhibit updating.  This is only
  13229. useful for Emacs 19.
  13230. Vc-style-alist
  13231. Styles of Indentation.
  13232. Elements of this alist are of the form:
  13233.  
  13234.   (STYLE-STRING (VARIABLE . VALUE) [(VARIABLE . VALUE) ...])
  13235.  
  13236. where STYLE-STRING is a short descriptive string used to select a
  13237. style, VARIABLE is any cc-mode variable, and VALUE is the intended
  13238. value for that variable when using the selected style.
  13239.  
  13240. There is one special case when VARIABLE is `c-offsets-alist'.  In this
  13241. case, the VALUE is a list containing elements of the form:
  13242.  
  13243.   (SYNTACTIC-SYMBOL . VALUE)
  13244.  
  13245. as described in `c-offsets-alist'.  These are passed directly to
  13246. `c-set-offset' so there is no need to set every syntactic symbol in
  13247. your style, only those that are different from the default.
  13248.  
  13249. Note that all styles inherit from the "CC-MODE" style, which is
  13250. computed at the time the mode is loaded.
  13251. Vc-file-style
  13252. *Variable interface for setting style via File Local Variables.
  13253. In a file's Local Variable section, you can set this variable to a
  13254. string suitable for `c-set-style'.  When the file is visited, cc-mode
  13255. will set the style of the file to this value automatically.
  13256.  
  13257. Note that file style settings are applied before file offset settings
  13258. as designated in the variable `c-file-offsets'.
  13259. Vc-file-offsets
  13260. *Variable interface for setting offsets via File Local Variables.
  13261. In a file's Local Variable section, you can set this variable to an
  13262. association list similiar to the values allowed in `c-offsets-alist'.
  13263. When the file is visited, cc-mode will institute these offset settings
  13264. automatically.
  13265.  
  13266. Note that file offset settings are applied after file style settings
  13267. as designated in the variable `c-file-style'.
  13268. Vc-mode-hook
  13269. *Hook called by `c-mode'.
  13270. Vc++-mode-hook
  13271. *Hook called by `c++-mode'.
  13272. Vobjc-mode-hook
  13273. *Hook called by `objc-mode'.
  13274. Vc-mode-common-hook
  13275. *Hook called by `c-mode', `c++-mode', and 'objc-mode' during common init.
  13276. Vc-mode-menu
  13277. XEmacs 19 (formerly Lucid) menu for C/C++/ObjC modes.
  13278. Vc-emacs-features
  13279. A list of features extant in the Emacs you are using.
  13280. There are many flavors of Emacs out there, each with different
  13281. features supporting those needed by cc-mode.  Here's the current
  13282. supported list, along with the values for this variable:
  13283.  
  13284.  Vanilla Emacs 18/Epoch 4:   (v18 no-dual-comments)
  13285.  Emacs 18/Epoch 4 (patch2):  (v18 8-bit)
  13286.  XEmacs (formerly Lucid) 19: (v19 8-bit)
  13287.  FSF Emacs 19:               (v19 1-bit).
  13288. Vc++-mode-abbrev-table
  13289. Abbrev table in use in c++-mode buffers.
  13290. Vc-mode-abbrev-table
  13291. Abbrev table in use in c-mode buffers.
  13292. Vobjc-mode-abbrev-table
  13293. Abbrev table in use in objc-mode buffers.
  13294. Vc-mode-map
  13295. Keymap used in c-mode buffers.
  13296. Vc++-mode-map
  13297. Keymap used in c++-mode buffers.
  13298. Vobjc-mode-map
  13299. Keymap used in objc-mode buffers.
  13300. Vc-mode-syntax-table
  13301. Syntax table used in c-mode buffers.
  13302. Vc++-mode-syntax-table
  13303. Syntax table used in c++-mode buffers.
  13304. Vobjc-mode-syntax-table
  13305. Syntax table used in objc-mode buffers.
  13306. Vc-hungry-delete-key
  13307. Internal state of hungry delete key feature.
  13308. Vc-auto-newline
  13309. Internal state of auto newline feature.
  13310. Vc-auto-hungry-string
  13311. Internal auto-newline/hungry-delete designation string for mode line.
  13312. Vc-syntactic-context
  13313. Variable containing syntactic analysis list during indentation.
  13314. Vc-comment-start-regexp
  13315. Buffer local variable describing how comment are introduced.
  13316. Vc-conditional-key
  13317. Buffer local language-specific conditional keyword regexp.
  13318. Vc-access-key
  13319. Buffer local language-specific access key regexp.
  13320. Vc-class-key
  13321. Buffer local language-specific class key regexp.
  13322. Vc-protection-key
  13323. Regexp describing protection keywords.
  13324. Vc-symbol-key
  13325. Regexp describing a C/C++/ObjC symbol.
  13326. We cannot use just `word' syntax class since `_' cannot be in word
  13327. class.  Putting underscore in word class breaks forward word movement
  13328. behavior that users are familiar with.
  13329. Vc-baseclass-key
  13330. Regexp describing C++ base classes in a derived class definition.
  13331. Vc-C++-class-key
  13332. Regexp describing a C++ class declaration, including templates.
  13333. Vc-C-class-key
  13334. Regexp describing a C struct declaration.
  13335. Vc-inher-key
  13336. Regexp describing a class inheritance declaration.
  13337. Vc-switch-label-key
  13338. Regexp describing a switch's case or default label
  13339. Vc-C++-access-key
  13340. Regexp describing C++ access specification keywords.
  13341. Vc-label-key
  13342. Regexp describing any label.
  13343. Vc-C-conditional-key
  13344. Regexp describing a conditional control.
  13345. Vc-C++-conditional-key
  13346. Regexp describing a conditional control for C++.
  13347. Vc-C++-friend-key
  13348. Regexp describing friend declarations in C++ classes.
  13349. Vc-C++-comment-start-regexp
  13350. Dual comment value for `c-comment-start-regexp'.
  13351. Vc-C-comment-start-regexp
  13352. Single comment style value for `c-comment-start-regexp'.
  13353. Vc-ObjC-method-key
  13354. Regexp describing an Objective-C method intro.
  13355. Vc-ObjC-access-key
  13356. Regexp describing access specification keywords for Objective-C.
  13357. Vc-ObjC-class-key
  13358. Regexp describing a class or protocol declaration for Objective-C.
  13359. Fc++-mode
  13360. Major mode for editing C++ code.
  13361. To submit a problem report, enter `\[c-submit-bug-report]' from a
  13362. c++-mode buffer.  This automatically sets up a mail buffer with
  13363. version information already added.  You just need to add a description
  13364. of the problem, including a reproducable test case and send the
  13365. message.
  13366.  
  13367. To see what version of cc-mode you are running, enter `\[c-version]'.
  13368.  
  13369. Note that the details of configuring c++-mode have been moved to the
  13370. accompanying texinfo manual (which is not yet completed -- volunteers
  13371. are welcome).  Until then, please read the README file that came with
  13372. the cc-mode distribution.
  13373.  
  13374. The hook variable `c++-mode-hook' is run with no args, if that
  13375. variable is bound and has a non-nil value.  Also the common hook
  13376. c-mode-common-hook is run first, by this defun, `c-mode', and `objc-mode'.
  13377.  
  13378. Key bindings:
  13379. \{c++-mode-map}
  13380. Fc-mode
  13381. Major mode for editing K&R and ANSI C code.
  13382. To submit a problem report, enter `\[c-submit-bug-report]' from a
  13383. c-mode buffer.  This automatically sets up a mail buffer with version
  13384. information already added.  You just need to add a description of the
  13385. problem, including a reproducable test case and send the message.
  13386.  
  13387. To see what version of cc-mode you are running, enter `\[c-version]'.
  13388.  
  13389. Note that the details of configuring c-mode have been moved to the
  13390. accompanying texinfo manual (which is not yet completed -- volunteers
  13391. are welcome).  Until then, please read the README file that came with
  13392. the cc-mode distribution.
  13393.  
  13394. The hook variable `c-mode-hook' is run with no args, if that value is
  13395. bound and has a non-nil value.  Also the common hook
  13396. c-mode-common-hook is run first, by this defun, `c++-mode', and `objc-mode'.
  13397.  
  13398. Key bindings:
  13399. \{c-mode-map}
  13400. Fobjc-mode
  13401. Major mode for editing Objective C code.
  13402. To submit a problem report, enter `\[c-submit-bug-report]' from an
  13403. objc-mode buffer.  This automatically sets up a mail buffer with
  13404. version information already added.  You just need to add a description
  13405. of the problem, including a reproducable test case and send the
  13406. message.
  13407.  
  13408. To see what version of cc-mode you are running, enter `\[c-version]'.
  13409.  
  13410. Note that the details of configuring objc-mode have been moved to the
  13411. accompanying texinfo manual (which is not yet completed -- volunteers
  13412. are welcome).  Until then, please read the README file that came with
  13413. the cc-mode distribution.
  13414.  
  13415. The hook variable `objc-mode-hook' is run with no args, if that value
  13416. is bound and has a non-nil value.  Also the common hook
  13417. c-mode-common-hook is run first, by this defun, `c-mode', and `c++-mode'.
  13418.  
  13419. Key bindings:
  13420. \{objc-mode-map}
  13421. Fc-postprocess-file-styles
  13422. Function that post processes relevent file local variables.
  13423. Currently, this function simply applies any style and offset settings
  13424. found in the file's Local Variable list.  It first applies any style
  13425. setting found in `c-file-style', then it applies any offset settings
  13426. it finds in `c-file-offsets'.
  13427. Fc-enable-//-in-c-mode
  13428. Enables // as a comment delimiter in `c-mode'.
  13429. ANSI C currently does *not* allow this, although many C compilers
  13430. support optional C++ style comments.  To use, call this function from
  13431. your `.emacs' file before you visit any C files.  The changes are
  13432. global and affect all future `c-mode' buffers.
  13433. Fc-toggle-auto-state
  13434. Toggle auto-newline feature.
  13435. Optional numeric ARG, if supplied turns on auto-newline when positive,
  13436. turns it off when negative, and just toggles it when zero.
  13437.  
  13438. When the auto-newline feature is enabled (as evidenced by the `/a' or
  13439. `/ah' on the modeline after the mode name) newlines are automatically
  13440. inserted after special characters such as brace, comma, semi-colon,
  13441. and colon.
  13442. Fc-toggle-hungry-state
  13443. Toggle hungry-delete-key feature.
  13444. Optional numeric ARG, if supplied turns on hungry-delete when positive,
  13445. turns it off when negative, and just toggles it when zero.
  13446.  
  13447. When the hungry-delete-key feature is enabled (as evidenced by the
  13448. `/h' or `/ah' on the modeline after the mode name) the delete key
  13449. gobbles all preceding whitespace in one fell swoop.
  13450. Fc-toggle-auto-hungry-state
  13451. Toggle auto-newline and hungry-delete-key features.
  13452. Optional numeric ARG, if supplied turns on auto-newline and
  13453. hungry-delete when positive, turns them off when negative, and just
  13454. toggles them when zero.
  13455.  
  13456. See `c-toggle-auto-state' and `c-toggle-hungry-state' for details.
  13457. Fc-electric-delete
  13458. Deletes preceding character or whitespace.
  13459. If `c-hungry-delete-key' is non-nil, as evidenced by the "/h" or
  13460. "/ah" string on the mode line, then all preceding whitespace is
  13461. consumed.  If however an ARG is supplied, or `c-hungry-delete-key' is
  13462. nil, or point is inside a literal then the function in the variable
  13463. `c-delete-function' is called.
  13464. Fc-electric-pound
  13465. Electric pound (`#') insertion.
  13466. Inserts a `#' character specially depending on the variable
  13467. `c-electric-pound-behavior'.  If a numeric ARG is supplied, or if
  13468. point is inside a literal, nothing special happens.
  13469. Fc-electric-brace
  13470. Insert a brace.
  13471.  
  13472. If the auto-newline feature is turned on, as evidenced by the "/a"
  13473. or "/ah" string on the mode line, newlines are inserted before and
  13474. after braces based on the value of `c-hanging-braces-alist'.
  13475.  
  13476. Also, the line is re-indented unless a numeric ARG is supplied, there
  13477. are non-whitespace characters present on the line after the brace, or
  13478. the brace is inserted inside a literal.
  13479. Fc-electric-slash
  13480. Insert a slash character.
  13481. If slash is second of a double-slash C++ style comment introducing
  13482. construct, and we are on a comment-only-line, indent line as comment.
  13483. If numeric ARG is supplied or point is inside a literal, indentation
  13484. is inhibited.
  13485. Fc-electric-star
  13486. Insert a star character.
  13487. If the star is the second character of a C style comment introducing
  13488. construct, and we are on a comment-only-line, indent line as comment.
  13489. If numeric ARG is supplied or point is inside a literal, indentation
  13490. is inhibited.
  13491. Fc-electric-semi&comma
  13492. Insert a comma or semicolon.
  13493. When the auto-newline feature is turned on, as evidenced by the "/a"
  13494. or "/ah" string on the mode line, a newline might be inserted.  See
  13495. the variable `c-hanging-semi&comma-criteria' for how newline insertion
  13496. is determined.
  13497.  
  13498. When semicolon is inserted, the line is re-indented unless a numeric
  13499. arg is supplied, point is inside a literal, or there are
  13500. non-whitespace characters on the line following the semicolon.
  13501. Fc-semi&comma-inside-parenlist
  13502. Determine if a newline should be added after a semicolon.
  13503. If a comma was inserted, no determination is made.  If a semicolon was
  13504. inserted inside a parenthesis list, no newline is added otherwise a
  13505. newline is added.  In either case, checking is stopped.  This supports
  13506. exactly the old newline insertion behavior.
  13507. Fc-electric-colon
  13508. Insert a colon.
  13509.  
  13510. If the auto-newline feature is turned on, as evidenced by the "/a"
  13511. or "/ah" string on the mode line, newlines are inserted before and
  13512. after colons based on the value of `c-hanging-colons-alist'.
  13513.  
  13514. Also, the line is re-indented unless a numeric ARG is supplied, there
  13515. are non-whitespace characters present on the line after the colon, or
  13516. the colon is inserted inside a literal.
  13517.  
  13518. This function cleans up double colon scope operators based on the
  13519. value of `c-cleanup-list'.
  13520. Fc-set-offset
  13521. Change the value of a syntactic element symbol in `c-offsets-alist'.
  13522. SYMBOL is the syntactic element symbol to change and OFFSET is the new
  13523. offset for that syntactic element.  Optional ADD says to add SYMBOL to
  13524. `c-offsets-alist' if it doesn't already appear there.
  13525. Fc-set-style
  13526. Set cc-mode variables to use one of several different indentation styles.
  13527. STYLENAME is a string representing the desired style from the list of
  13528. styles described in the variable `c-style-alist'.  See that variable
  13529. for details of setting up styles.
  13530. Fc-add-style
  13531. Adds a style to `c-style-alist', or updates an existing one.
  13532. STYLE is a string identifying the style to add or update.  DESCRIP is
  13533. an association list describing the style and must be of the form:
  13534.  
  13535.   ((VARIABLE . VALUE) [(VARIABLE . VALUE) ...])
  13536.  
  13537. See the variable `c-style-alist' for the semantics of VARIABLE and
  13538. VALUE.  This function also sets the current style to STYLE using
  13539. `c-set-style' if the optional SET-P flag is non-nil.
  13540. Fc-fill-paragraph
  13541. Like \[fill-paragraph] but handles C and C++ style comments.
  13542. If any of the current line is a comment or within a comment,
  13543. fill the comment or the paragraph of it that point is in,
  13544. preserving the comment indentation or line-starting decorations.
  13545. Fc-forward-into-nomenclature
  13546. Move forward to end of a nomenclature section or word.
  13547. With arg, to it arg times.
  13548. Fc-backward-into-nomenclature
  13549. Move backward to beginning of a nomenclature section or word.
  13550. With optional ARG, move that many times.  If ARG is negative, move
  13551. forward.
  13552. Fc-scope-operator
  13553. Insert a double colon scope operator at point.
  13554. No indentation or other "electric" behavior is performed.
  13555. Fc-beginning-of-statement
  13556. Go to the beginning of the innermost C statement.
  13557. With prefix arg, go back N - 1 statements.  If already at the
  13558. beginning of a statement then go to the beginning of the preceding
  13559. one.  If within a string or comment, or next to a comment (only
  13560. whitespace between), move by sentences instead of statements.
  13561.  
  13562. When called from a program, this function takes 2 optional args: the
  13563. prefix arg, and a buffer position limit which is the farthest back to
  13564. search.
  13565. Fc-end-of-statement
  13566. Go to the end of the innermost C statement.
  13567.  
  13568. With prefix arg, go forward N - 1 statements.  Move forward to end of
  13569. the next statement if already at end.  If within a string or comment,
  13570. move by sentences instead of statements.
  13571.  
  13572. When called from a program, this function takes 2 optional args: the
  13573. prefix arg, and a buffer position limit which is the farthest back to
  13574. search.
  13575. Fc-up-conditional
  13576. Move back to the containing preprocessor conditional, leaving mark behind.
  13577. A prefix argument acts as a repeat count.  With a negative argument,
  13578. move forward to the end of the containing preprocessor conditional.
  13579. When going backwards, `#elif' is treated like `#else' followed by
  13580. `#if'.  When going forwards, `#elif' is ignored.
  13581. Fc-backward-conditional
  13582. Move back across a preprocessor conditional, leaving mark behind.
  13583. A prefix argument acts as a repeat count.  With a negative argument,
  13584. move forward across a preprocessor conditional.
  13585. Fc-forward-conditional
  13586. Move forward across a preprocessor conditional, leaving mark behind.
  13587. A prefix argument acts as a repeat count.  With a negative argument,
  13588. move backward across a preprocessor conditional.
  13589. Fc-indent-command
  13590. Indent current line as C++ code, or in some cases insert a tab character.
  13591.  
  13592. If `c-tab-always-indent' is t, always just indent the current line.
  13593. If nil, indent the current line only if point is at the left margin or
  13594. in the line's indentation; otherwise insert a tab.  If other than nil
  13595. or t, then tab is inserted only within literals (comments and strings)
  13596. and inside preprocessor directives, but line is always reindented.
  13597.  
  13598. A numeric argument, regardless of its value, means indent rigidly all
  13599. the lines of the expression starting after point so that this line
  13600. becomes properly indented.  The relative indentation among the lines
  13601. of the expression are preserved.
  13602. Fc-indent-exp
  13603. Indent each line in balanced expression following point.
  13604. Optional SHUTUP-P if non-nil, inhibits message printing and error checking.
  13605. Fc-indent-defun
  13606. Re-indents the current top-level function def, struct or class declaration.
  13607. Fc-mark-function
  13608. Put mark at end of a C, C++, or Objective-C defun, point at beginning.
  13609. Fc-show-syntactic-information
  13610. Show syntactic information for current line.
  13611. Fc-snug-do-while
  13612. Dynamically calculate brace hanginess for do-while statements.
  13613. Using this function, `while' clauses that end a `do-while' block will
  13614. remain on the same line as the brace that closes that block.
  13615.  
  13616. See `c-hanging-braces-alist' for how to utilize this function as an
  13617. ACTION associated with `block-close' syntax.
  13618. Fc-backslash-region
  13619. Insert, align, or delete end-of-line backslashes on the lines in the region.
  13620. With no argument, inserts backslashes and aligns existing backslashes.
  13621. With an argument, deletes the backslashes.
  13622.  
  13623. This function does not modify the last line of the region if the region ends 
  13624. right at the start of the following line; it does not modify blank lines
  13625. at the start of the region.  So you can put the region around an entire macro
  13626. definition and conveniently use this command.
  13627. Vc-version
  13628. cc-mode version number.
  13629. Vc-mode-help-address
  13630. Address accepting submission of bug reports.
  13631. Fc-version
  13632. Echo the current version of cc-mode in the minibuffer.
  13633. Fc-submit-bug-report
  13634. Submit via mail a bug report on cc-mode.
  13635. Fc-popup-menu
  13636. Pops up the C/C++/ObjC menu.
  13637. Vvc-master-templates
  13638. *Where to look for version-control master files.
  13639. The first pair corresponding to a given back end is used as a template
  13640. when creating new masters.
  13641. Vvc-make-backup-files
  13642. *If non-nil, backups of registered files are made as with other files.
  13643. If nil (the default), files covered by version control don't get backups.
  13644. Vvc-display-status
  13645. *If non-nil, display revision number and lock status in modeline.
  13646. Otherwise, not displayed.
  13647. Vvc-file-prop-obarray
  13648. Obarray for per-file properties.
  13649. Fvc-name
  13650. Return the master name of a file, nil if it is not registered.
  13651. Fvc-backend-deduce
  13652. Return the version-control type of a file, nil if it is not registered.
  13653. Fvc-toggle-read-only
  13654. Change read-only status of current buffer, perhaps via version control.
  13655. If the buffer is visiting a file registered with a form of version control
  13656. that locks files by making them read-only (i.e.: not CVS), then check the
  13657. file in or out.  Otherwise, just change the read-only flag of the buffer.
  13658.  
  13659. If you provide a prefix argument, we pass it on to `vc-next-action'.
  13660. Fvc-mode-line
  13661. Set `vc-mode' to display type of version control for FILE.
  13662. The value is set in the current buffer, which should be the buffer
  13663. visiting FILE.  Second optional arg LABEL is put in place of version
  13664. control system name.
  13665. Fvc-file-not-found-hook
  13666. When file is not found, try to check it out from RCS or SCCS.
  13667. Returns t if checkout was successful, nil otherwise.
  13668. Vvc-menu
  13669. Menubar entry for using the revision control system.
  13670. Vcase-replace
  13671. *Non-nil means `query-replace' should preserve case in replacements.
  13672. What this means is that `query-replace' will change the case of the
  13673. replacement text so that it matches the text that was replaced.
  13674. If this variable is nil, the replacement text will be inserted
  13675. exactly as it was specified by the user, irrespective of the case
  13676. of the text that was replaced.
  13677.  
  13678. Note that this flag has no effect if `case-fold-search' is nil,
  13679. or if the replacement text has any uppercase letters in it.
  13680. Fquery-replace
  13681. Replace some occurrences of FROM-STRING with TO-STRING.
  13682. As each match is found, the user must type a character saying
  13683. what to do with it.  For directions, type \[help-command] at that time.
  13684.  
  13685. Preserves case in each replacement if `case-replace' and `case-fold-search'
  13686. are non-nil and FROM-STRING has no uppercase letters.
  13687. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  13688. only matches surrounded by word boundaries.
  13689.  
  13690. To customize possible responses, change the "bindings" in `query-replace-map'.
  13691. Fquery-replace-regexp
  13692. Replace some things after point matching REGEXP with TO-STRING.
  13693. As each match is found, the user must type a character saying
  13694. what to do with it.  For directions, type \[help-command] at that time.
  13695.  
  13696. Preserves case in each replacement if `case-replace' and `case-fold-search'
  13697. are non-nil and REGEXP has no uppercase letters.
  13698. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  13699. only matches surrounded by word boundaries.
  13700. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP,
  13701. and `\=\N' (where N is a digit) stands for
  13702.  whatever what matched the Nth `\(...\)' in REGEXP.
  13703. Fmap-query-replace-regexp
  13704. Replace some matches for REGEXP with various strings, in rotation.
  13705. The second argument TO-STRINGS contains the replacement strings, separated
  13706. by spaces.  This command works like `query-replace-regexp' except
  13707. that each successive replacement uses the next successive replacement string,
  13708. wrapping around from the last such string to the first.
  13709.  
  13710. Non-interactively, TO-STRINGS may be a list of replacement strings.
  13711.  
  13712. A prefix argument N says to use each replacement string N times
  13713. before rotating to the next.
  13714. Freplace-string
  13715. Replace occurrences of FROM-STRING with TO-STRING.
  13716. Preserve case in each match if `case-replace' and `case-fold-search'
  13717. are non-nil and FROM-STRING has no uppercase letters.
  13718. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  13719. only matches surrounded by word boundaries.
  13720.  
  13721. This function is usually the wrong thing to use in a Lisp program.
  13722. What you probably want is a loop like this:
  13723.   (while (search-forward FROM-STRING nil t)
  13724.     (replace-match TO-STRING nil t))
  13725. which will run faster and will not set the mark or print anything.
  13726. Freplace-regexp
  13727. Replace things after point matching REGEXP with TO-STRING.
  13728. Preserve case in each match if `case-replace' and `case-fold-search'
  13729. are non-nil and REGEXP has no uppercase letters.
  13730. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  13731. only matches surrounded by word boundaries.
  13732. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP,
  13733. and `\=\N' (where N is a digit) stands for
  13734.  whatever what matched the Nth `\(...\)' in REGEXP.
  13735.  
  13736. This function is usually the wrong thing to use in a Lisp program.
  13737. What you probably want is a loop like this:
  13738.   (while (re-search-forward REGEXP nil t)
  13739.     (replace-match TO-STRING nil nil))
  13740. which will run faster and will not set the mark or print anything.
  13741. Vregexp-history
  13742. History list for some commands that read regular expressions.
  13743. Fdelete-non-matching-lines
  13744. Delete all lines except those containing matches for REGEXP.
  13745. A match split across lines preserves all the lines it lies in.
  13746. Applies to all lines after point.
  13747. Fdelete-matching-lines
  13748. Delete lines containing matches for REGEXP.
  13749. If a match is split across lines, all the lines it lies in are deleted.
  13750. Applies to lines after point.
  13751. Fcount-matches
  13752. Print number of matches for REGEXP following point.
  13753. Foccur-mode
  13754. Major mode for output from \[occur].
  13755. Move point to one of the occurrences in this buffer,
  13756. then use \[occur-mode-goto-occurrence] to go to the same occurrence
  13757. Or click \<occur-mode-map>\[occur-mode-mouse-goto] on an occurrence line.
  13758. in the buffer that the occurrences were found in.
  13759. \{occur-mode-map}
  13760. Foccur-mode-mouse-goto
  13761. go to occurence highlighted by mouse.  This function is only reasonable when bound
  13762. to a mouse key in the occur buffer
  13763. Foccur-mode-goto-occurrence
  13764. Go to the occurrence the current line describes.
  13765. Vlist-matching-lines-default-context-lines
  13766. *Default number of context lines to include around a `list-matching-lines'
  13767. match.  A negative number means to include that many lines before the match.
  13768. A positive number means to include that many lines both before and after.
  13769. Vlist-matching-lines-whole-buffer
  13770. If t, occur operates on whole buffer, otherwise occur starts from point.
  13771. default is nil.
  13772. Flist-matching-lines
  13773. Show all lines in the current buffer containing a match for REGEXP.
  13774.  
  13775. If a match spreads across multiple lines, all those lines are shown.
  13776.  
  13777. If variable `list-matching-lines-whole-buffer' is non-nil, the entire buffer is
  13778. searched, otherwise search begins at point.
  13779.  
  13780. Each line is displayed with NLINES lines before and after,
  13781. or -NLINES before if NLINES is negative.
  13782. NLINES defaults to `list-matching-lines-default-context-lines'.
  13783. Interactively it is the prefix arg.
  13784.  
  13785. The lines are shown in a buffer named `*Occur*'.
  13786. It serves as a menu to find any of the occurrences in this buffer.
  13787. \[describe-mode] in that buffer will explain how.
  13788. Vquery-replace-help
  13789. Help message while in query-replace
  13790. Vquery-replace-map
  13791. Keymap that defines the responses to questions in `query-replace'.
  13792. The "bindings" in this map are not commands; they are answers.
  13793. The valid answers include `act', `skip', `act-and-show',
  13794. `exit', `act-and-exit', `edit', `delete-and-edit', `recenter',
  13795. `automatic', `backup', and `help'.
  13796. Fperform-replace
  13797. Subroutine of `query-replace'.  Its complexity handles interactive queries.
  13798. Don't use this in your own program unless you want to query and set the mark
  13799. just as `query-replace' does.  Instead, write a simple loop like this:
  13800.   (while (re-search-forward "foo[     ]+bar" nil t)
  13801.     (replace-match "foobar" nil nil))
  13802. which will run faster and probably do exactly what you want.
  13803. Fmatch-string
  13804. Returns the Nth subexpression matched by the last regular expression
  13805. search.  The second argument, STRING, must be specified if the last
  13806. regular expression search was done with `string-match'.
  13807. Fsave-match-data
  13808. Execute FORMS, restoring the global value of the match data.
  13809. Fmake-specifier-and-init
  13810. Create and initialize a new specifier.
  13811.  
  13812. This is a front-end onto `make-specifier' that allows you to create a
  13813. specifier and add specs to it at the same time.  TYPE specifies the
  13814. specifier type.  SPEC-LIST supplies the specification(s) to be added
  13815. to the specifier. Normally, almost any reasonable abbreviation of the
  13816. full spec-list form is accepted, and is converted to the full form;
  13817. however, if optional argument DONT-CANONICALIZE is non-nil, this
  13818. conversion is not performed, and the SPEC-LIST must already be in full
  13819. form.  See `canonicalize-spec-list'.
  13820. Fmap-specifier
  13821. Apply MS-FUNC to the specification(s) for MS-LOCALE in MS-SPECIFIER.
  13822.  
  13823. If MS-LOCALE is a locale, MS-FUNC will be called for that locale.
  13824. If MS-LOCALE is a locale type, MS-FUNC will be mapped over all locales
  13825. of that type.  If MS-LOCALE is 'all or nil, MS-FUNC will be mapped
  13826. over all locales in MS-SPECIFIER.
  13827.  
  13828. MS-FUNC is called with four arguments: the MS-SPECIFIER, the locale
  13829. being mapped over, the inst-list for that locale, and the
  13830. optional MS-MAPARG.  If any invocation of MS-FUNC returns non-nil,
  13831. the mapping will stop and the returned value becomes the
  13832. value returned from `map-specifier'.  Otherwise, `map-specifier'
  13833. returns nil.
  13834. Fcanonicalize-inst-pair
  13835. Canonicalize the given INST-PAIR.
  13836.  
  13837. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST
  13838. will be used for.
  13839.  
  13840. Canonicalizing means converting to the full form for an inst-pair, i.e.
  13841. `(TAG-SET . INSTANTIATOR)'.  A single, untagged instantiator is given
  13842. a tag set of nil (the empty set), and a single tag is converted into
  13843. a tag set consisting only of that tag.
  13844.  
  13845. If NOERROR is non-nil, signal an error if the inst-pair is invalid;
  13846. otherwise return t.
  13847. Fcanonicalize-inst-list
  13848. Canonicalize the given INST-LIST (a list of inst-pairs).
  13849.  
  13850. SPECIFIER-TYPE specifies the type of specifier that this INST-LIST
  13851. will be used for.
  13852.  
  13853. Canonicalizing means converting to the full form for an inst-list, i.e.
  13854. `((TAG-SET . INSTANTIATOR) ...)'.  This function accepts a single
  13855. inst-pair or any abbrevation thereof or a list of (possibly
  13856. abbreviated) inst-pairs. (See `canonicalize-inst-pair'.)
  13857.  
  13858. If NOERROR is non-nil, signal an error if the inst-list is invalid;
  13859. otherwise return t.
  13860. Fcanonicalize-spec
  13861. Canonicalize the given SPEC (a specification).
  13862.  
  13863. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST
  13864. will be used for.
  13865.  
  13866. Canonicalizing means converting to the full form for a spec, i.e.
  13867. `(LOCALE (TAG-SET . INSTANTIATOR) ...)'.  This function accepts a
  13868. possibly abbreviated inst-list or a cons of a locale and a possibly
  13869. abbreviated inst-list. (See `canonicalize-inst-list'.)
  13870.  
  13871. If NOERROR is nil, signal an error if the specification is invalid;
  13872. otherwise return t.
  13873. Fcanonicalize-spec-list
  13874. Canonicalize the given SPEC-LIST (a list of specifications).
  13875.  
  13876. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST
  13877. will be used for.
  13878.  
  13879. Canonicalizing means converting to the full form for a spec-list, i.e.
  13880. `((LOCALE (TAG-SET . INSTANTIATOR) ...) ...)'.  This function accepts
  13881. a possibly abbreviated specification or a list of such things. (See
  13882. `canonicalize-spec'.) This is the function used to convert spec-lists
  13883. accepted by `set-specifier' and such into a form suitable for
  13884. `add-spec-list-to-specifier'.
  13885.  
  13886. This function tries extremely hard to resolve any ambiguities,
  13887. and the built-in specifier types (font, image, toolbar, etc.) are
  13888. designed so that there won't be any ambiguities.
  13889.  
  13890. If NOERROR is nil, signal an error if the spec-list is invalid;
  13891. otherwise return t.
  13892. Fset-specifier
  13893. Add some specifications to SPECIFIER.
  13894. VALUE can be a single instantiator or tagged instantiator (added as a
  13895. global specification), a list of tagged and/or untagged instantiators
  13896. (added as a global specification), a cons of a locale and instantiator
  13897. or locale and instantiator list, a list of such conses, or nearly any
  13898. other reasonable form.  More specifically, VALUE can be anything
  13899. accepted by `canonicalize-spec-list'.
  13900.  
  13901. HOW-TO-ADD is the same as in `add-spec-to-specifier'.
  13902.  
  13903. Note that `set-specifier' is exactly complementary to `specifier-specs'
  13904. except in the case where SPECIFIER has no specs at all in it but nil
  13905. is a valid instantiator (in that case, `specifier-specs' will return
  13906. nil (meaning no specs) and `set-specifier' will interpret the `nil'
  13907. as meaning "I'm adding a global instantiator and its value is `nil'"),
  13908. or in strange cases where there is an ambiguity between a spec-list
  13909. and an inst-list, etc. (The built-in specifier types are designed
  13910. in such a way as to avoid any such ambiguities.)
  13911.  
  13912. If you want to work with spec-lists, you should probably not use these
  13913. functions, but should use the lower-level functions `specifier-spec-list'
  13914. and `add-spec-list-to-specifier'.  These functions always work with
  13915. fully-qualified spec-lists; thus, there is no possibility for
  13916. ambiguity and no need to go through the function `canonicalize-spec-list',
  13917. which is potentially time-consuming.
  13918. VBuffer-menu-mode-map
  13919.  
  13920. FBuffer-menu-mode
  13921. Major mode for editing a list of buffers.
  13922. Each line describes one of the buffers in Emacs.
  13923. Letters do not insert themselves; instead, they are commands.
  13924. m -- mark buffer to be displayed.
  13925. q -- select buffer of line point is on.
  13926.   Also show buffers marked with m in other windows.
  13927. 1 -- select that buffer in full-frame window.
  13928. 2 -- select that buffer in one window,
  13929.   together with buffer selected before this one in another window.
  13930. f -- select that buffer in place of the buffer menu buffer.
  13931. o -- select that buffer in another window,
  13932.   so the buffer menu buffer remains visible in its window.
  13933. t -- visit-tags-table this buffer.
  13934. ~ -- clear modified-flag on that buffer.
  13935. s -- mark that buffer to be saved, and move down.
  13936. d or k -- mark that buffer to be deleted, and move down.
  13937. C-d -- mark that buffer to be deleted, and move up.
  13938. x -- delete or save marked buffers.
  13939. u -- remove all kinds of marks from current line.
  13940. Delete -- back up a line and remove marks.
  13941.  
  13942. Precisely,\{Buffer-menu-mode-map}
  13943. FBuffer-menu-buffer
  13944. Return buffer described by this line of buffer menu.
  13945. Vlist-buffers-identification
  13946. String used to identify this buffer, or a function of one argument
  13947. to generate such a string.  This variable is always buffer-local.
  13948. Flist-buffers
  13949. Display a list of names of existing buffers.
  13950. Inserts it in buffer *Buffer List* and displays that.
  13951. Note that buffers with names starting with spaces are omitted.
  13952. Non-null optional arg FILES-ONLY means mention only file buffers.
  13953.  
  13954. The M column contains a * for buffers that are modified.
  13955. The R column contains a % for buffers that are read-only.
  13956. Fbuffer-menu
  13957. Make a menu of buffers so you can save, delete or select them.
  13958. With argument, show only buffers that are visiting files.
  13959. Type ? after invocation to get help on commands available.
  13960. Type q immediately to make the buffer menu go away.
  13961. FBuffer-menu-mark
  13962. Mark buffer on this line for being displayed by \[Buffer-menu-select] command.
  13963. FBuffer-menu-unmark
  13964. Cancel all requested operations on buffer on this line.
  13965. FBuffer-menu-backup-unmark
  13966. Move up and cancel all requested operations on buffer on line above.
  13967. FBuffer-menu-delete
  13968. Mark buffer on this line to be deleted by \[Buffer-menu-execute] command.
  13969. FBuffer-menu-delete-backwards
  13970. Mark buffer on this line to be deleted by \[Buffer-menu-execute] command
  13971. and then move up one line
  13972. FBuffer-menu-save
  13973. Mark buffer on this line to be saved by \[Buffer-menu-execute] command.
  13974. FBuffer-menu-not-modified
  13975. Mark buffer on this line as unmodified (no changes to save).
  13976. FBuffer-menu-execute
  13977. Save and/or delete buffers marked with \[Buffer-menu-save] or \[Buffer-menu-delete] commands.
  13978. FBuffer-menu-select
  13979. Select this line's buffer; also display buffers marked with ">".
  13980. You can mark buffers with the \[Buffer-menu-mark] command.
  13981. FBuffer-menu-visit-tags-table
  13982. Visit the tags table in the buffer on this line.  See `visit-tags-table'.
  13983. FBuffer-menu-1-window
  13984. Select this line's buffer, alone, in full frame.
  13985. FBuffer-menu-this-window
  13986. Select this line's buffer in this window.
  13987. FBuffer-menu-other-window
  13988. Select this line's buffer in other window, leaving buffer menu visible.
  13989. FBuffer-menu-2-window
  13990. Select this line's buffer, with previous buffer in second window.
  13991. Vmodeline-buffer-identification
  13992. Modeline control for identifying the buffer being displayed.
  13993. Its default value is "XEmacs: %17b".  Major modes that edit things
  13994. other than ordinary files may change this (e.g. Info, Dired,...)
  13995. Vmodeline-process
  13996. Modeline control for displaying info on process status.
  13997. Normally nil in most modes, since there is no process to display.
  13998. Vmodeline-modified
  13999. Modeline control for displaying whether current buffer is modified.
  14000. Vminor-mode-alist
  14001. Alist saying how to show minor modes in the modeline.
  14002. Each element looks like (VARIABLE STRING);
  14003. STRING is included in the modeline iff VARIABLE's value is non-nil.
  14004.  
  14005. Actually, STRING need not be a string; any possible modeline element
  14006. is okay.  See `modeline-format'.
  14007. Fvm
  14008. View Mail: an alternate mail reader for emacs.
  14009. Optional first arg FOLDER specifies the folder to visit.  It defaults
  14010. to the value of vm-primary-inbox.  The folder buffer is put into VM
  14011. mode, a major mode for reading mail.
  14012.  
  14013. Prefix arg or optional second arg READ-ONLY non-nil indicates
  14014. that the folder should be considered read only.  No attribute
  14015. changes, messages additions or deletions will be allowed in the
  14016. visited folder.
  14017.  
  14018. Visiting the primary inbox causes any contents of the system mailbox to
  14019. be moved and appended to the resulting buffer.
  14020.  
  14021. All the messages can be read by repeatedly pressing SPC.  Use `n'ext and
  14022. `p'revious to move about in the folder.  Messages are marked for
  14023. deletion with `d', and saved to another folder with `s'.  Quitting VM
  14024. with `q' expunges deleted messages and saves the buffered folder to
  14025. disk.
  14026.  
  14027. See the documentation for vm-mode for more information.
  14028. Fvm-mode
  14029. View Mail: an alternate mail reader for emacs.
  14030.  
  14031. Commands:
  14032.    h - summarize folder contents
  14033.    j - discard cached information about the current message
  14034.  
  14035.    n - go to next message
  14036.    p - go to previous message
  14037.    N - like `n' but ignores skip-variable settings
  14038.    P - like `p' but ignores skip-variable settings
  14039.  M-n - go to next unread message
  14040.  M-p - go to previous unread message
  14041.  RET - go to numbered message (uses prefix arg or prompts in minibuffer)
  14042.  TAB - go to last message seen
  14043.  M-s - incremental search through the folder
  14044.  
  14045.    t - display hidden headers
  14046.  SPC - scroll forward a page (if at end of message, then display next message)
  14047.    b - scroll backward a page
  14048.    < - go to beginning of current message
  14049.    > - go to end of current message
  14050.  
  14051.    d - delete message, prefix arg deletes messages forward (flag as deleted)
  14052.  C-d - delete message, prefix arg deletes messages backward (flag as deleted)
  14053.    u - undelete
  14054.    k - flag for deletion all messages with same subject as the current message
  14055.  
  14056.    r - reply (only to the sender of the message)
  14057.    R - reply with included text for current message
  14058.  M-r - extract and resend bounced message
  14059.    f - followup (reply to all recipients of message)
  14060.    F - followup with included text from the current message
  14061.    z - forward the current message
  14062.    m - send a message
  14063.    B - resend the current message to another user.
  14064.    c - continue composing the most recent message you were composing
  14065.  
  14066.    @ - digestify and mail entire folder contents (the folder is not modified)
  14067.    * - burst a digest into individual messages, and append and assimilate these
  14068.        message into the current folder.
  14069.  
  14070.    G - sort messages by various keys
  14071.  
  14072.    g - get any new mail that has arrived in the system mailbox
  14073.        (new mail is appended to the disk and buffer copies of the
  14074.        primary inbox.)
  14075.    v - visit another mail folder
  14076.    V - visit a virtual folder
  14077.  
  14078.    e - edit the current message
  14079.  
  14080.    s - save current message in a folder (appends if folder already exists)
  14081.    w - write current message to a file without its headers (appends if exists)
  14082.    S - save entire folder to disk, expunging deleted messages
  14083.    A - save unfiled messages to their vm-auto-folder-alist specified folders
  14084.    # - expunge deleted messages (without saving folder)
  14085.    q - quit VM, deleted messages are expunged, folder saved to disk
  14086.    x - exit VM with no change to the folder
  14087.  
  14088.  M N - use marks; the next vm command will affect only marked messages
  14089.        if it makes sense for the command to do so
  14090.  
  14091.        M M - mark the current message
  14092.        M U - unmark the current message
  14093.        M m - mark all messages
  14094.        M u - unmark all messages
  14095.        M ? - help for the mark commands
  14096.  
  14097.  W S - save the current window configuration to a name
  14098.  W D - delete a window configuration
  14099.  W W - apply a configuration
  14100.  W ? - help for the window configuration commands
  14101.  
  14102.  C-_ - undo, special undo that retracts the most recent
  14103.              changes in message attributes.  Expunges and saves
  14104.              cannot be undone.  C-x u is also bound to this
  14105.              command.
  14106.  
  14107.    L - reload your VM init file, ~/.vm
  14108.  
  14109.    ? - help
  14110.  
  14111.    ! - run a shell command
  14112.    | - run a shell command with the current message as input
  14113.  
  14114.  M-C - view conditions under which you may redistribute VM
  14115.  M-W - view the details of VM's lack of a warranty
  14116.  
  14117. Variables:
  14118.    vm-auto-center-summary
  14119.    vm-auto-folder-alist
  14120.    vm-auto-folder-case-fold-search
  14121.    vm-auto-get-new-mail
  14122.    vm-auto-next-message
  14123.    vm-berkeley-mail-compatibility
  14124.    vm-check-folder-types
  14125.    vm-convert-folder-types
  14126.    vm-circular-folders
  14127.    vm-confirm-new-folders
  14128.    vm-confirm-quit
  14129.    vm-crash-box
  14130.    vm-delete-after-archiving
  14131.    vm-delete-after-bursting
  14132.    vm-delete-after-saving
  14133.    vm-delete-empty-folders
  14134.    vm-digest-burst-type
  14135.    vm-digest-center-preamble
  14136.    vm-digest-preamble-format
  14137.    vm-digest-send-type
  14138.    vm-folder-directory
  14139.    vm-folder-read-only
  14140.    vm-follow-summary-cursor
  14141.    vm-forwarded-headers
  14142.    vm-forwarding-digest-type
  14143.    vm-forwarding-subject-format
  14144.    vm-gargle-uucp
  14145.    vm-highlighted-header-regexp
  14146.    vm-honor-page-delimiters
  14147.    vm-in-reply-to-format
  14148.    vm-included-text-attribution-format
  14149.    vm-included-text-prefix
  14150.    vm-inhibit-startup-message
  14151.    vm-invisible-header-regexp
  14152.    vm-jump-to-new-messages
  14153.    vm-jump-to-unread-messages
  14154.    vm-keep-sent-messages
  14155.    vm-mail-header-from
  14156.    vm-mail-mode-hook
  14157.    vm-mail-window-percentage
  14158.    vm-mode-hook
  14159.    vm-move-after-deleting
  14160.    vm-move-after-undeleting
  14161.    vm-mutable-windows
  14162.    vm-preview-lines
  14163.    vm-preview-read-messages
  14164.    vm-primary-inbox
  14165.    vm-recognize-pop-maildrops
  14166.    vm-reply-ignored-addresses
  14167.    vm-reply-subject-prefix
  14168.    vm-resend-bounced-headers
  14169.    vm-resend-bounced-discard-header-regexp
  14170.    vm-resend-headers
  14171.    vm-resend-discard-header-regexp
  14172.    vm-retain-message-order
  14173.    vm-rfc1153-digest-discard-header-regexp
  14174.    vm-rfc1153-digest-headers
  14175.    vm-rfc934-digest-discard-header-regexp
  14176.    vm-rfc934-digest-headers
  14177.    vm-search-using-regexps
  14178.    vm-skip-deleted-messages
  14179.    vm-skip-read-messages
  14180.    vm-spool-files
  14181.    vm-startup-with-summary
  14182.    vm-strip-reply-headers
  14183.    vm-summary-format
  14184.    vm-unforwarded-header-regexp
  14185.    vm-virtual-folder-alist
  14186.    vm-virtual-mirror
  14187.    vm-visible-headers
  14188.    vm-visit-when-saving
  14189.    vm-window-configuration-file
  14190.  
  14191. Fvm-visit-folder
  14192. Visit a mail file with View Mail, an alternate mail reader for emacs.
  14193. See the description of the `vm' and `vm-mode' functions.
  14194.  
  14195. VM will parse and present its messages to you in the usual way.
  14196.  
  14197. First arg FOLDER specifies the mail file to visit.  When this
  14198. command is called interactively the file name is read from the
  14199. minibuffer.
  14200.  
  14201. Prefix arg or optional second arg READ-ONLY non-nil indicates
  14202. that the folder should be considered read only.  No attribute
  14203. changes, messages additions or deletions will be allowed in the
  14204. visited folder.
  14205. Fvm-mail
  14206. Send a mail message from within View Mail, or from without.
  14207. Feiffel-mode
  14208. Major Mode for editing Eiffel programs.
  14209. Fbyte-recompile-directory
  14210. Recompile every `.el' file in DIRECTORY that needs recompilation.
  14211. This is if a `.elc' file exists but is older than the `.el' file.
  14212.  
  14213. If the `.elc' file does not exist, normally the `.el' file is *not* compiled.
  14214. But a prefix argument (optional second arg) means ask user,
  14215. for each such `.el' file, whether to compile it.  Prefix argument 0 means
  14216. don't ask and compile the file anyway.
  14217. Fbyte-recompile-file
  14218. Recompile a file of Lisp code named FILENAME if it needs recompilation.
  14219. This is if the `.elc' file exists but is older than the `.el' file.
  14220.  
  14221. If the `.elc' file does not exist, normally the `.el' file is *not*
  14222. compiled.  But a prefix argument (optional second arg) means ask user
  14223. whether to compile it.  Prefix argument 0 don't ask and recompile anyway.
  14224. Fbyte-compile-file
  14225. Compile a file of Lisp code named FILENAME into a file of byte code.
  14226. The output file's name is made by appending `c' to the end of FILENAME.
  14227. With prefix arg (noninteractively: 2nd arg), load the file after compiling.
  14228. Fbyte-compile-and-load-file
  14229. Compile a file of Lisp code named FILENAME into a file of byte code,
  14230. and then load it.  The output file's name is made by appending "c" to 
  14231. the end of FILENAME.
  14232. Fbyte-compile-buffer
  14233. Byte-compile and evaluate contents of BUFFER (default: the current buffer).
  14234. Fcompile-defun
  14235. Compile and evaluate the current top-level form.
  14236. Print the result in the minibuffer.
  14237. With argument, insert value in current buffer after the form.
  14238. Fbyte-compile
  14239. If FORM is a symbol, byte-compile its function definition.
  14240. If FORM is a lambda or a macro, byte-compile it as a function.
  14241. Fbyte-compile-sexp
  14242. Compile and return SEXP.
  14243. Fbatch-byte-compile
  14244. Run `byte-compile-file' on the files remaining on the command line.
  14245. Use this from the command line, with `-batch';
  14246. it won't work in an interactive Emacs.
  14247. Each file is processed even if an error occurred previously.
  14248. For example, invoke "emacs -batch -f batch-byte-compile $emacs/ ~/*.el"
  14249. Fbatch-byte-recompile-directory-norecurse
  14250. Same as `batch-byte-recompile-directory' but without recursion.
  14251. Fbatch-byte-recompile-directory
  14252. Runs `byte-recompile-directory' on the dirs remaining on the command line.
  14253. Must be used only with -batch, and kills emacs on completion.
  14254. For example, invoke "emacs -batch -f batch-byte-recompile-directory ."
  14255. Fdisassemble
  14256. Print disassembled code for OBJECT in (optional) BUFFER.
  14257. OBJECT can be a symbol defined as a function, or a function itself
  14258. (a lambda expression or a compiled-function object).
  14259. If OBJECT is not already compiled, we compile it, but do not
  14260. redefine OBJECT if it is a symbol.
  14261. Vcalendar-setup
  14262. The frame set up of the calendar.
  14263. The choices are `one-frame' (calendar and diary together in one separate,
  14264. dediciated frame) or `two-frames' (calendar and diary in separate, dedicated
  14265. frames); with any other value the current frame is used.
  14266. Vcalendar-week-start-day
  14267. *The day of the week on which a week in the calendar begins.
  14268. 0 means Sunday (default), 1 means Monday, and so on.
  14269. Vcalendar-offset
  14270. *The offset of the principal month from the center of the calendar window.
  14271. 0 means the principal month is in the center (default), -1 means on the left,
  14272. +1 means on the right.  Larger (or smaller) values push the principal month off
  14273. the screen.
  14274. Vview-diary-entries-initially
  14275. *Non-nil means display current date's diary entries on entry.
  14276. The diary is displayed in another window when the calendar is first displayed,
  14277. if the current date is visible.  The number of days of diary entries displayed
  14278. is governed by the variable `number-of-diary-entries'.
  14279. Vnumber-of-diary-entries
  14280. *Specifies how many days of diary entries are to be displayed initially.
  14281. This variable affects the diary display when the command M-x diary is used,
  14282. or if the value of the variable `view-diary-entries-initially' is t.  For
  14283. example, if the default value 1 is used, then only the current day's diary
  14284. entries will be displayed.  If the value 2 is used, then both the current
  14285. day's and the next day's entries will be displayed.
  14286.  
  14287. The value can also be a vector such as [0 2 2 2 2 4 1]; this value
  14288. says to display no diary entries on Sunday, the display the entries
  14289. for the current date and the day after on Monday through Thursday,
  14290. display Friday through Monday's entries on Friday, and display only
  14291. Saturday's entries on Saturday.
  14292.  
  14293. This variable does not affect the diary display with the `d' command
  14294. from the calendar; in that case, the prefix argument controls the
  14295. number of days of diary entries displayed.
  14296. Vmark-diary-entries-in-calendar
  14297. *Non-nil means mark dates with diary entries, in the calendar window.
  14298. The marking symbol is specified by the variable `diary-entry-marker'.
  14299. Vview-calendar-holidays-initially
  14300. *Non-nil means display holidays for current three month period on entry.
  14301. The holidays are displayed in another window when the calendar is first
  14302. displayed.
  14303. Vmark-holidays-in-calendar
  14304. *Non-nil means mark dates of holidays in the calendar window.
  14305. The marking symbol is specified by the variable `calendar-holiday-marker'.
  14306. Vall-hebrew-calendar-holidays
  14307. *If nil, show only major holidays from the Hebrew calendar.
  14308. This means only those Jewish holidays that appear on secular calendars.
  14309.  
  14310. If t, show all the holidays that would appear in a complete Hebrew calendar.
  14311. Vall-christian-calendar-holidays
  14312. *If nil, show only major holidays from the Christian calendar.
  14313. This means only those Christian holidays that appear on secular calendars.
  14314.  
  14315. If t, show all the holidays that would appear in a complete Christian
  14316. calendar.
  14317. Vall-islamic-calendar-holidays
  14318. *If nil, show only major holidays from the Islamic calendar.
  14319. This means only those Islamic holidays that appear on secular calendars.
  14320.  
  14321. If t, show all the holidays that would appear in a complete Islamic
  14322. calendar.
  14323. Vcalendar-load-hook
  14324. *List of functions to be called after the calendar is first loaded.
  14325. This is the place to add key bindings to `calendar-mode-map'.
  14326. Vinitial-calendar-window-hook
  14327. *List of functions to be called when the calendar window is first opened.
  14328. The functions invoked are called after the calendar window is opened, but
  14329. once opened is never called again.  Leaving the calendar with the `q' command
  14330. and reentering it will cause these functions to be called again.
  14331. Vtoday-visible-calendar-hook
  14332. *List of functions called whenever the current date is visible.
  14333. This can be used, for example, to replace today's date with asterisks; a
  14334. function `calendar-star-date' is included for this purpose:
  14335.     (setq today-visible-calendar-hook 'calendar-star-date)
  14336. It can also be used to mark the current date with `calendar-today-marker';
  14337. a function is also provided for this:
  14338.     (setq today-visible-calendar-hook 'calendar-mark-today)
  14339.  
  14340. The corresponding variable `today-invisible-calendar-hook' is the list of
  14341. functions called when the calendar function was called when the current
  14342. date is not visible in the window.
  14343.  
  14344. Other than the use of the provided functions, the changing of any
  14345. characters in the calendar buffer by the hooks may cause the failure of the
  14346. functions that move by days and weeks.
  14347. Vtoday-invisible-calendar-hook
  14348. *List of functions called whenever the current date is not visible.
  14349.  
  14350. The corresponding variable `today-visible-calendar-hook' is the list of
  14351. functions called when the calendar function was called when the current
  14352. date is visible in the window.
  14353.  
  14354. Other than the use of the provided functions, the changing of any
  14355. characters in the calendar buffer by the hooks may cause the failure of the
  14356. functions that move by days and weeks.
  14357. Vdiary-file
  14358. *Name of the file in which one's personal diary of dates is kept.
  14359.  
  14360. The file's entries are lines in any of the forms
  14361.  
  14362.             MONTH/DAY
  14363.             MONTH/DAY/YEAR
  14364.             MONTHNAME DAY
  14365.             MONTHNAME DAY, YEAR
  14366.             DAYNAME
  14367.  
  14368. at the beginning of the line; the remainder of the line is the diary entry
  14369. string for that date.  MONTH and DAY are one or two digit numbers, YEAR is
  14370. a number and may be written in full or abbreviated to the final two digits.
  14371. If the date does not contain a year, it is generic and applies to any year.
  14372. DAYNAME entries apply to any date on which is on that day of the week.
  14373. MONTHNAME and DAYNAME can be spelled in full, abbreviated to three
  14374. characters (with or without a period), capitalized or not.  Any of DAY,
  14375. MONTH, or MONTHNAME, YEAR can be `*' which matches any day, month, or year,
  14376. respectively.
  14377.  
  14378. The European style (in which the day precedes the month) can be used
  14379. instead, if you execute `european-calendar' when in the calendar, or set
  14380. `european-calendar-style' to t in your .emacs file.  The European forms are
  14381.  
  14382.             DAY/MONTH
  14383.             DAY/MONTH/YEAR
  14384.             DAY MONTHNAME
  14385.             DAY MONTHNAME YEAR
  14386.             DAYNAME
  14387.  
  14388. To revert to the default American style from the European style, execute
  14389. `american-calendar' in the calendar.
  14390.  
  14391. A diary entry can be preceded by the character
  14392. `diary-nonmarking-symbol' (ordinarily `&') to make that entry
  14393. nonmarking--that is, it will not be marked on dates in the calendar
  14394. window but will appear in a diary window.
  14395.  
  14396. Multiline diary entries are made by indenting lines after the first with
  14397. either a TAB or one or more spaces.
  14398.  
  14399. Lines not in one the above formats are ignored.  Here are some sample diary
  14400. entries (in the default American style):
  14401.  
  14402.      12/22/1988 Twentieth wedding anniversary!!
  14403.      &1/1. Happy New Year!
  14404.      10/22 Ruth's birthday.
  14405.      21: Payday
  14406.      Tuesday--weekly meeting with grad students at 10am
  14407.               Supowit, Shen, Bitner, and Kapoor to attend.
  14408.      1/13/89 Friday the thirteenth!!
  14409.      &thu 4pm squash game with Lloyd.
  14410.      mar 16 Dad's birthday
  14411.      April 15, 1989 Income tax due.
  14412.      &* 15 time cards due.
  14413.  
  14414. If the first line of a diary entry consists only of the date or day name with
  14415. no trailing blanks or punctuation, then that line is not displayed in the
  14416. diary window; only the continuation lines is shown.  For example, the
  14417. single diary entry
  14418.  
  14419.      02/11/1989
  14420.       Bill Blattner visits Princeton today
  14421.       2pm Cognitive Studies Committee meeting
  14422.       2:30-5:30 Lizzie at Lawrenceville for `Group Initiative'
  14423.       4:00pm Jamie Tappenden
  14424.       7:30pm Dinner at George and Ed's for Alan Ryan
  14425.       7:30-10:00pm dance at Stewart Country Day School
  14426.  
  14427. will appear in the diary window without the date line at the beginning.  This
  14428. facility allows the diary window to look neater, but can cause confusion if
  14429. used with more than one day's entries displayed.
  14430.  
  14431. Diary entries can be based on Lisp sexps.  For example, the diary entry
  14432.  
  14433.       %%(diary-block 11 1 1990 11 10 1990) Vacation
  14434.  
  14435. causes the diary entry "Vacation" to appear from November 1 through November
  14436. 10, 1990.  Other functions available are `diary-float', `diary-anniversary',
  14437. `diary-cyclic', `diary-day-of-year', `diary-iso-date', `diary-french-date',
  14438. `diary-hebrew-date', `diary-islamic-date', `diary-mayan-date',
  14439. `diary-yahrzeit', `diary-sunrise-sunset', `diary-phases-of-moon',
  14440. `diary-parasha', `diary-omer', `diary-rosh-hodesh', and
  14441. `diary-sabbath-candles'.  See the documentation for the function
  14442. `list-sexp-diary-entries' for more details.
  14443.  
  14444. Diary entries based on the Hebrew and/or the Islamic calendar are also
  14445. possible, but because these are somewhat slow, they are ignored
  14446. unless you set the `nongregorian-diary-listing-hook' and the
  14447. `nongregorian-diary-marking-hook' appropriately.  See the documentation
  14448. for these functions for details.
  14449.  
  14450. Diary files can contain directives to include the contents of other files; for
  14451. details, see the documentation for the variable `list-diary-entries-hook'.
  14452. Vdiary-nonmarking-symbol
  14453. *Symbol indicating that a diary entry is not to be marked in the calendar.
  14454. Vhebrew-diary-entry-symbol
  14455. *Symbol indicating a diary entry according to the Hebrew calendar.
  14456. Vislamic-diary-entry-symbol
  14457. *Symbol indicating a diary entry according to the Islamic calendar.
  14458. Vdiary-include-string
  14459. *The string indicating inclusion of another file of diary entries.
  14460. See the documentation for the function `include-other-diary-files'.
  14461. Vsexp-diary-entry-symbol
  14462. *The string used to indicate a sexp diary entry in diary-file.
  14463. See the documentation for the function `list-sexp-diary-entries'.
  14464. Vabbreviated-calendar-year
  14465. *Interpret a two-digit year DD in a diary entry as either 19DD or 20DD.
  14466. For the Gregorian calendar; similarly for the Hebrew and Islamic calendars.
  14467. If this variable is nil, years must be written in full.
  14468. Veuropean-calendar-style
  14469. *Use the European style of dates in the diary and in any displays.
  14470. If this variable is t, a date 1/2/1990 would be interpreted as February 1,
  14471. 1990.  The accepted European date styles are
  14472.  
  14473.             DAY/MONTH
  14474.             DAY/MONTH/YEAR
  14475.             DAY MONTHNAME
  14476.             DAY MONTHNAME YEAR
  14477.             DAYNAME
  14478.  
  14479. Names can be capitalized or not, written in full, or abbreviated to three
  14480. characters with or without a period.
  14481. Vamerican-date-diary-pattern
  14482. *List of pseudo-patterns describing the American patterns of date used.
  14483. See the documentation of `diary-date-forms' for an explanation.
  14484. Veuropean-date-diary-pattern
  14485. *List of pseudo-patterns describing the European patterns of date used.
  14486. See the documentation of `diary-date-forms' for an explanation.
  14487. Veuropean-calendar-display-form
  14488. *Pseudo-pattern governing the way a date appears in the European style.
  14489. See the documentation of calendar-date-display-form for an explanation.
  14490. Vamerican-calendar-display-form
  14491. *Pseudo-pattern governing the way a date appears in the American style.
  14492. See the documentation of `calendar-date-display-form' for an explanation.
  14493. Vprint-diary-entries-hook
  14494. *List of functions called after a temporary diary buffer is prepared.
  14495. The buffer shows only the diary entries currently visible in the diary
  14496. buffer.  The default just does the printing.  Other uses might include, for
  14497. example, rearranging the lines into order by day and time, saving the buffer
  14498. instead of deleting it, or changing the function used to do the printing.
  14499. Vlist-diary-entries-hook
  14500. *List of functions called after diary file is culled for relevant entries.
  14501. It is to be used for diary entries that are not found in the diary file.
  14502.  
  14503. A function `include-other-diary-files' is provided for use as the value of
  14504. this hook.  This function enables you to use shared diary files together
  14505. with your own.  The files included are specified in the diary file by lines
  14506. of the form
  14507.  
  14508.         #include "filename"
  14509.  
  14510. This is recursive; that is, #include directives in files thus included are
  14511. obeyed.  You can change the "#include" to some other string by changing
  14512. the variable `diary-include-string'.  When you use `include-other-diary-files'
  14513. as part of the list-diary-entries-hook, you will probably also want to use the
  14514. function `mark-included-diary-files' as part of `mark-diary-entries-hook'.
  14515.  
  14516. For example, you could use
  14517.  
  14518.      (setq list-diary-entries-hook
  14519.        '(include-other-diary-files sort-diary-entries))
  14520.      (setq diary-display-hook 'fancy-diary-display)
  14521.  
  14522. in your `.emacs' file to cause the fancy diary buffer to be displayed with
  14523. diary entries from various included files, each day's entries sorted into
  14524. lexicographic order.
  14525. Vdiary-hook
  14526. *List of functions called after the display of the diary.
  14527. Can be used for appointment notification.
  14528. Vdiary-display-hook
  14529. *List of functions that handle the display of the diary.
  14530. If nil (the default), `simple-diary-display' is used.  Use `ignore' for no
  14531. diary display.
  14532.  
  14533. Ordinarily, this just displays the diary buffer (with holidays indicated in
  14534. the mode line), if there are any relevant entries.  At the time these
  14535. functions are called, the variable `diary-entries-list' is a list, in order
  14536. by date, of all relevant diary entries in the form of ((MONTH DAY YEAR)
  14537. STRING), where string is the diary entry for the given date.  This can be
  14538. used, for example, a different buffer for display (perhaps combined with
  14539. holidays), or produce hard copy output.
  14540.  
  14541. A function `fancy-diary-display' is provided as an alternative
  14542. choice for this hook; this function prepares a special noneditable diary
  14543. buffer with the relevant diary entries that has neat day-by-day arrangement
  14544. with headings.  The fancy diary buffer will show the holidays unless the
  14545. variable `holidays-in-diary-buffer' is set to nil.  Ordinarily, the fancy
  14546. diary buffer will not show days for which there are no diary entries, even
  14547. if that day is a holiday; if you want such days to be shown in the fancy
  14548. diary buffer, set the variable `diary-list-include-blanks' to t.
  14549. Vnongregorian-diary-listing-hook
  14550. *List of functions called for listing diary file and included files.
  14551. As the files are processed for diary entries, these functions are used to cull
  14552. relevant entries.  You can use either or both of `list-hebrew-diary-entries'
  14553. and `list-islamic-diary-entries'.  The documentation for these functions
  14554. describes the style of such diary entries.
  14555. Vmark-diary-entries-hook
  14556. *List of functions called after marking diary entries in the calendar.
  14557.  
  14558. A function `mark-included-diary-files' is also provided for use as the
  14559. mark-diary-entries-hook; it enables you to use shared diary files together
  14560. with your own.  The files included are specified in the diary file by lines
  14561. of the form
  14562.         #include "filename"
  14563. This is recursive; that is, #include directives in files thus included are
  14564. obeyed.  You can change the "#include" to some other string by changing the
  14565. variable `diary-include-string'.  When you use `mark-included-diary-files' as
  14566. part of the mark-diary-entries-hook, you will probably also want to use the
  14567. function `include-other-diary-files' as part of `list-diary-entries-hook'.
  14568. Vnongregorian-diary-marking-hook
  14569. *List of functions called for marking diary file and included files.
  14570. As the files are processed for diary entries, these functions are used to cull
  14571. relevant entries.  You can use either or both of `mark-hebrew-diary-entries'
  14572. and `mark-islamic-diary-entries'.  The documentation for these functions
  14573. describes the style of such diary entries.
  14574. Vdiary-list-include-blanks
  14575. *If nil, do not include days with no diary entry in the list of diary entries.
  14576. Such days will then not be shown in the the fancy diary buffer, even if they
  14577. are holidays.
  14578. Vholidays-in-diary-buffer
  14579. *Non-nil means include holidays in the diary display.
  14580. The holidays appear in the mode line of the diary buffer, or in the
  14581. fancy diary buffer next to the date.  This slows down the diary functions
  14582. somewhat; setting it to nil makes the diary display faster.
  14583. Vgeneral-holidays
  14584. *General holidays.  Default value is for the United States.
  14585. See the documentation for `calendar-holidays' for details.
  14586. Vlocal-holidays
  14587. *Local holidays.
  14588. See the documentation for `calendar-holidays' for details.
  14589. Vother-holidays
  14590. *User defined holidays.
  14591. See the documentation for `calendar-holidays' for details.
  14592. Vhebrew-holidays
  14593. *Jewish holidays.
  14594. See the documentation for `calendar-holidays' for details.
  14595. Vchristian-holidays
  14596. *Christian holidays.
  14597. See the documentation for `calendar-holidays' for details.
  14598. Vislamic-holidays
  14599. *Islamic holidays.
  14600. See the documentation for `calendar-holidays' for details.
  14601. Vsolar-holidays
  14602. *Sun-related holidays.
  14603. See the documentation for `calendar-holidays' for details.
  14604. Fcalendar
  14605. Display a three-month calendar in another window.
  14606. The three months appear side by side, with the current month in the middle
  14607. surrounded by the previous and next months.  The cursor is put on today's date.
  14608.  
  14609. If called with an optional prefix argument, prompts for month and year.
  14610.  
  14611. This function is suitable for execution in a .emacs file; appropriate setting
  14612. of the variable `view-diary-entries-initially' will cause the diary entries for
  14613. the current date to be displayed in another window.  The value of the variable
  14614. `number-of-diary-entries' controls the number of days of diary entries
  14615. displayed upon initial display of the calendar.
  14616.  
  14617. An optional prefix argument ARG causes the calendar displayed to be ARG
  14618. months in the future if ARG is positive or in the past if ARG is negative;
  14619. in this case the cursor goes on the first day of the month.
  14620.  
  14621. Once in the calendar window, future or past months can be moved into view.
  14622. Arbitrary months can be displayed, or the calendar can be scrolled forward
  14623. or backward.
  14624.  
  14625. The cursor can be moved forward or backward by one day, one week, one month,
  14626. or one year.  All of these commands take prefix arguments which, when negative,
  14627. cause movement in the opposite direction.  For convenience, the digit keys
  14628. and the minus sign are automatically prefixes.  The window is replotted as
  14629. necessary to display the desired date.
  14630.  
  14631. Diary entries can be marked on the calendar or displayed in another window.
  14632.  
  14633. Use M-x describe-mode for details of the key bindings in the calendar window.
  14634.  
  14635. The Gregorian calendar is assumed.
  14636.  
  14637. After loading the calendar, the hooks given by the variable
  14638. `calendar-load-hook' are run.  This is the place to add key bindings to the
  14639. calendar-mode-map.
  14640.  
  14641. After preparing the calendar window initially, the hooks given by the variable
  14642. `initial-calendar-window-hook' are run.
  14643.  
  14644. The hooks given by the variable `today-visible-calendar-hook' are run
  14645. everytime the calendar window gets scrolled, if the current date is visible
  14646. in the window.  If it is not visible, the hooks given by the variable
  14647. `today-invisible-calendar-hook' are run.  Thus, for example, setting
  14648. `today-visible-calendar-hook' to 'calendar-star-date will cause today's date
  14649. to be replaced by asterisks to highlight it whenever it is in the window.
  14650. Flist-yahrzeit-dates
  14651. List Yahrzeit dates for *Gregorian* DEATH-DATE from START-YEAR to END-YEAR.
  14652. When called interactively from the calendar window, the date of death is taken
  14653. from the cursor position.
  14654. Fdiary
  14655. Generate the diary window for ARG days starting with the current date.
  14656. If no argument is provided, the number of days of diary entries is governed
  14657. by the variable `number-of-diary-entries'.  This function is suitable for
  14658. execution in a `.emacs' file.
  14659. Fholidays
  14660. Display the holidays for last month, this month, and next month.
  14661. If called with an optional prefix argument, prompts for month and year.
  14662.  
  14663. This function is suitable for execution in a .emacs file.
  14664. Fphases-of-moon
  14665. Display the quarters of the moon for last month, this month, and next month.
  14666. If called with an optional prefix argument, prompts for month and year.
  14667.  
  14668. This function is suitable for execution in a .emacs file.
  14669. Vcalendar-time-display-form
  14670. *The pseudo-pattern that governs the way a time of day is formatted.
  14671.  
  14672. A pseudo-pattern is a list of expressions that can involve the keywords
  14673. `12-hours', `24-hours', and `minutes',  all numbers in string form,
  14674. and `am-pm' and `time-zone',  both alphabetic strings.
  14675.  
  14676. For example, the form
  14677.  
  14678.   '(24-hours ":" minutes
  14679.     (if time-zone " (") time-zone (if time-zone ")"))
  14680.  
  14681. would give military-style times like `21:07 (UTC)'.
  14682. Vcalendar-latitude
  14683. *Latitude of `calendar-location-name' in degrees.
  14684.  
  14685. The value can be either a decimal fraction (one place of accuracy is
  14686. sufficient), + north, - south, such as 40.7 for New York City, or the value
  14687. can be a vector [degrees minutes north/south] such as [40 50 north] for New
  14688. York City.
  14689.  
  14690. This variable should be set in site-local.el.
  14691. Vcalendar-longitude
  14692. *Longitude of `calendar-location-name' in degrees.
  14693.  
  14694. The value can be either a decimal fraction (one place of accuracy is
  14695. sufficient), + east, - west, such as -73.9 for New York City, or the value
  14696. can be a vector [degrees minutes east/west] such as [73 55 west] for New
  14697. York City.
  14698.  
  14699. This variable should be set in site-local.el.
  14700. Vcalendar-location-name
  14701. *Expression evaluating to name of `calendar-longitude', calendar-latitude'.
  14702. For example, "New York City".  Default value is just the latitude, longitude
  14703. pair.
  14704.  
  14705. This variable should be set in site-local.el.
  14706. Fsunrise-sunset
  14707. Local time of sunrise and sunset for today.  Accurate to +/- 2 minutes.
  14708. If called with an optional prefix argument, prompt for date.
  14709.  
  14710. If called with an optional double prefix argument, prompt for longitude,
  14711. latitude, time zone, and date, and always use standard time.
  14712.  
  14713. This function is suitable for execution in a .emacs file.
  14714. Fsolar-equinoxes-solstices
  14715. Date and time of equinoxes and solstices, if visible in the calendar window.
  14716. Requires floating point.
  14717. Fmake-comint
  14718. Make a comint process NAME in a buffer, running PROGRAM.
  14719. The name of the buffer is made by surrounding NAME with `*'s.
  14720. If there is already a running process in that buffer, it is not restarted.
  14721. Optional third arg STARTFILE is the name of a file to send the contents of to
  14722. the process.  Any more args are arguments to PROGRAM.
  14723. Fcomint-run
  14724. Run PROGRAM in a comint buffer and switch to it.
  14725. The buffer name is made by surrounding the file name of PROGRAM with `*'s.
  14726. The file name is used to make a symbol name, such as `comint-sh-hook', and any
  14727. hooks on this symbol are run in the buffer.
  14728. See `make-comint' and `comint-exec'.
  14729. Fcomint-dynamic-complete
  14730. Dynamically perform completion at point.
  14731. Calls the functions in `comint-dynamic-complete-functions' to perform
  14732. completion until a function returns non-nil, at which point completion is
  14733. assumed to have occurred.
  14734. Fcomint-dynamic-list-completions
  14735. List in help buffer sorted COMPLETIONS.
  14736. Typing SPC flushes the help buffer.
  14737. Vgdb-command-name
  14738. Pathname for executing gdb.
  14739. Fgdb
  14740. Run gdb on program FILE in buffer *gdb-FILE*.
  14741. The directory containing FILE becomes the initial working directory
  14742. and source-file directory for GDB.  If you wish to change this, use
  14743. the GDB commands `cd DIR' and `directory'.
  14744. Fgdbsrc
  14745. Activates a gdb session with gdbsrc-mode turned on.  A numeric prefix
  14746. argument can be used to specify a running process to attach, and a non-numeric
  14747. prefix argument will cause you to be prompted for a core file to debug.
  14748. Fsdb
  14749. Run sdb on program FILE in buffer *gud-FILE*.
  14750. The directory containing FILE becomes the initial working directory
  14751. and source-file directory for your debugger.
  14752. Fdbx
  14753. Run dbx on program FILE in buffer *gud-FILE*.
  14754. The directory containing FILE becomes the initial working directory
  14755. and source-file directory for your debugger.
  14756. Fxdb
  14757. Run xdb on program FILE in buffer *gud-FILE*.
  14758. The directory containing FILE becomes the initial working directory
  14759. and source-file directory for your debugger.
  14760.  
  14761. You can set the variable 'gud-xdb-directories' to a list of program source
  14762. directories if your program contains sources from more than one directory.
  14763. Fperldb
  14764. Run perldb on program FILE in buffer *gud-FILE*.
  14765. The directory containing FILE becomes the initial working directory
  14766. and source-file directory for your debugger.
  14767. Frlogin
  14768. Open a network login connection to HOST via the `rlogin' program.
  14769. Input is sent line-at-a-time to the remote connection.
  14770.  
  14771. Communication with the remote host is recorded in a buffer `*rlogin-HOST*'
  14772. (or `*rlogin-USER@HOST*' if the remote username differs).
  14773. If a prefix argument is given and the buffer `*rlogin-HOST*' already exists,
  14774. a new buffer with a different connection will be made.
  14775.  
  14776. When called from a program, if the optional second argument is a string or 
  14777. buffer, it names the buffer to use.
  14778.  
  14779. The variable `rlogin-program' contains the name of the actual program to
  14780. run.  It can be a relative or absolute path.
  14781.  
  14782. The variable `rlogin-explicit-args' is a list of arguments to give to
  14783. the rlogin when starting.  They are added after any arguments given in
  14784. INPUT-ARGS.
  14785.  
  14786. If the default value of `rlogin-directory-tracking-mode' is t, then the
  14787. default directory in that buffer is set to a remote (FTP) file name to
  14788. access your home directory on the remote machine.  Occasionally this causes
  14789. an error, if you cannot access the home directory on that machine.  This
  14790. error is harmless as long as you don't try to use that default directory.
  14791.  
  14792. If `rlogin-directory-tracking-mode' is neither t nor nil, then the default
  14793. directory is initially set up to your (local) home directory.
  14794. This is useful if the remote machine and your local machine
  14795. share the same files via NFS.  This is the default.
  14796.  
  14797. If you wish to change directory tracking styles during a session, use the
  14798. function `rlogin-directory-tracking-mode' rather than simply setting the
  14799. variable.
  14800. Vshell-prompt-pattern
  14801. Regexp to match prompts in the inferior shell.
  14802. Defaults to "^[^#$%>\n]*[#$%>] *", which works pretty well.
  14803. This variable is used to initialise `comint-prompt-regexp' in the
  14804. shell buffer.
  14805.  
  14806. The pattern should probably not match more than one line.  If it does,
  14807. shell-mode may become confused trying to distinguish prompt from input
  14808. on lines which don't start with a prompt.
  14809.  
  14810. This is a fine thing to set in your `.emacs' file.
  14811. Fshell
  14812. Run an inferior shell, with I/O through buffer *shell*.
  14813. If buffer exists but shell process is not running, make new shell.
  14814. If buffer exists and shell process is running, 
  14815.  just switch to buffer `*shell*'.
  14816. Program used comes from variable `explicit-shell-file-name',
  14817.  or (if that is nil) from the ESHELL environment variable,
  14818.  or else from SHELL if there is no ESHELL.
  14819. If a file `~/.emacs_SHELLNAME' exists, it is given as initial input
  14820.  (Note that this may lose due to a timing error if the shell
  14821.   discards input when it starts up.)
  14822. The buffer is put in Shell mode, giving commands for sending input
  14823. and controlling the subjobs of the shell.  See `shell-mode'.
  14824. See also the variable `shell-prompt-pattern'.
  14825.  
  14826. The shell file name (sans directories) is used to make a symbol name
  14827. such as `explicit-csh-args'.  If that symbol is a variable,
  14828. its value is used as a list of arguments when invoking the shell.
  14829. Otherwise, one argument `-i' is passed to the shell.
  14830.  
  14831. (Type \[describe-mode] in the shell buffer for a list of commands.)
  14832. Ftelnet
  14833. Open a network login connection to host named HOST (a string).
  14834. With a prefix argument, prompts for the port name or number as well.
  14835. Communication with HOST is recorded in a buffer *HOST-telnet*.
  14836. Normally input is edited in Emacs and sent a line at a time.
  14837. See also `\[rsh]'.
  14838. Frsh
  14839. Open a network login connection to host named HOST (a string).
  14840. Communication with HOST is recorded in a buffer *HOST-rsh*.
  14841. Normally input is edited in Emacs and sent a line at a time.
  14842. See also `\[telnet]'.
  14843. Vange-ftp-path-format
  14844. *Format of a fully expanded remote pathname.  This is a cons
  14845. (REGEXP . (HOST USER PATH)), where REGEXP is a regular expression matching
  14846. the full remote pathname, and HOST, USER, and PATH are the numbers of
  14847. parenthesized expressions in REGEXP for the components (in that order).
  14848. Vdired-listing-switches
  14849. *Switches passed to ls for dired. MUST contain the `l' option.
  14850. Can contain even `F', `b', `i' and `s'.
  14851. Vdired-chown-program
  14852. *Name of chown command (usully `chown' or `/etc/chown').
  14853. Vdired-ls-program
  14854. *Absolute or relative name of the ls program used by dired.
  14855. Vdired-ls-F-marks-symlinks
  14856. *Informs dired about how ls -lF marks symbolic links.
  14857. Set this to t if `dired-ls-program' with -lF marks the symbolic link
  14858. itself with a trailing @ (usually the case under Ultrix).
  14859.  
  14860. Example: if `ln -s foo bar; ls -F bar' gives `bar -> foo', set it to
  14861. nil, if it gives `bar@ -> foo', set it to t.
  14862.  
  14863. Dired checks if there is really a @ appended.  Thus, if you have a
  14864. marking ls program on one host and a non-marking on another host, and
  14865. don't care about symbolic links which really end in a @, you can
  14866. always set this variable to t.
  14867. Vdired-trivial-filenames
  14868. *Regexp of files to skip when moving point to the first file of a new directory listing.
  14869. Nil means move to the subdir line, t means move to first file.
  14870. Vdired-keep-marker-move
  14871. If t, moved marked files are marked if their originals were.
  14872. If a character, those files (marked or not) are marked with that character.
  14873. Vdired-keep-marker-copy
  14874. If t, copied files are marked if their source files were.
  14875. If a character, those files are always marked with that character.
  14876. Vdired-keep-marker-hardlink
  14877. If t, hard-linked files are marked if the linked-to files were.
  14878. If a character, those files are always marked with that character.
  14879. Vdired-keep-marker-symlink
  14880. If t, symlinked marked files are marked if the linked-to files were.
  14881. If a character, those files are always marked with that character.
  14882. Vdired-dwim-target
  14883. *If non-nil, dired tries to guess a default target directory:
  14884. If there is a dired buffer displayed in the next window, use
  14885. its current subdir, instead of the current subdir of this dired
  14886. buffer.
  14887.  
  14888. The target is used in the prompt for file copy, move etc.
  14889. Vdired-copy-preserve-time
  14890. *If non-nil, Dired preserves the last-modified time in a file copy.
  14891. (This works on only some systems.)\<dired-mode-map>
  14892. Use `\[dired-do-copy]' with a zero prefix argument to toggle its value.
  14893. Fdired
  14894. "Edit" directory DIRNAME--delete, rename, print, etc. some files in it.
  14895. With an optional prefix argument you can specify the ls SWITCHES that are used.
  14896. Dired displays a list of files in DIRNAME (which may also have
  14897.   shell wildcards appended to select certain files).
  14898. You can move around in it with the usual commands.
  14899. You can flag files for deletion with \<dired-mode-map>\[dired-flag-file-deleted] and then delete them by
  14900.   typing \[dired-do-deletions].
  14901. Type \[describe-mode] after entering dired for more info.
  14902.  
  14903. If DIRNAME is already in a dired buffer, that buffer is used without refresh.
  14904. Fdired-other-window
  14905. "Edit" directory DIRNAME.  Like `dired' but selects in another window.
  14906. Fdired-noselect
  14907. Like `dired' but returns the dired buffer as value, does not select it.
  14908. Fdired-cwd-make-magic
  14909. Modify COMMAND so that it's working directory is the current dired directory.
  14910. This works by binding `default-directory' to `(default-directory)'s value.
  14911. See also function `default-directory'.
  14912. Fdired-do-rename-numeric
  14913. Rename all marked (or next ARG) files using numbers.
  14914. You are prompted for a format string, e.g "part_%d_of_8", and a starting
  14915. number, e.g. 1.  If there are 8 marked files, this example will rename them to
  14916.  
  14917.     part_1_of_8
  14918.     part_2_of_8
  14919.     ...
  14920.     part_8_of_8
  14921. Fdired-do-rename-list
  14922. Rename all marked (or next ARG) files using elements from LIST.
  14923. You are prompted for a format string, e.g "x_%s", and the list,
  14924. e.g. '(foo bar zod).  This example will rename the marked files to
  14925.  
  14926.     x_foo
  14927.     x_bar
  14928.     x_zod
  14929.  
  14930. It is an error if LIST has not as many elements as there are files.
  14931. Fdired-rcs-mark-rcs-locked-files
  14932. Mark all files that are under RCS control and RCS-locked.
  14933. With prefix argument, unflag all those files.
  14934. Mentions RCS files for which a working file was not found in this buffer.
  14935. Type \[dired-why] to see them again.
  14936. Fdired-rcs-mark-rcs-files
  14937. Mark all files that are under RCS control.
  14938. With prefix argument, unflag all those files.
  14939. Mentions RCS files for which a working file was not found in this buffer.
  14940. Type \[dired-why] to see them again.
  14941. Fdired-extra-startup
  14942. Automatically put on dired-mode-hook to get extra dired features:
  14943. \<dired-mode-map>
  14944.   \[dired-vm]    -- VM on folder
  14945.   \[dired-rmail]    -- Rmail on folder
  14946.   \[dired-do-insert-subdir]    -- insert all marked subdirs
  14947.   \[dired-do-find-file]    -- visit all marked files simultaneously
  14948.   \[dired-set-marker-char], \[dired-restore-marker-char]    -- change and display dired-marker-char dynamically.
  14949.   \[dired-omit-toggle]    -- toggle omitting of files
  14950.   \[dired-mark-sexp]    -- mark by lisp expression
  14951.   \[dired-do-unmark]    -- replace existing marker with another.
  14952.   \[dired-mark-rcs-files]    -- mark all RCS controlled files
  14953.   \[dired-mark-files-compilation-buffer]    -- mark compilation files
  14954.   \[dired-copy-filename-as-kill]    -- copy the file or subdir names into the kill ring.
  14955.          You can feed it to other commands using \[yank].
  14956.  
  14957. For more features, see variables
  14958.  
  14959.   dired-omit-files
  14960.   dired-omit-extenstions
  14961.   dired-dangerous-shell-command
  14962.   dired-mark-keys
  14963.   dired-local-variables-file
  14964.   dired-find-subdir
  14965.   dired-guess-have-gnutar
  14966.   dired-auto-shell-command-alist
  14967.  
  14968. See also functions
  14969.  
  14970.   dired-sort-on-size
  14971.   dired-do-relsymlink
  14972.   dired-flag-extension
  14973.   dired-virtual
  14974.   dired-jump-back
  14975.   dired-jump-back-other-window
  14976.  
  14977. Vfind-ls-option
  14978. *Option to `find' to produce an `ls -l'-type listing.
  14979. Vfind-grep-options
  14980. *Option to grep to be as silent as possible.
  14981. On Berkeley systems, this is `-s', for others it seems impossible to
  14982. suppress all output, so `-l' is used to print nothing more than the
  14983. file name.
  14984. Vfind-dired-multiple-buffers
  14985. *If non-nil, generates a new buffer for each find
  14986. Ffind-dired
  14987. Run `find' and go into dired-mode on a buffer of the output.
  14988. The command run (after changing into DIR) is
  14989.  
  14990.     find . \( ARGS \) -ls
  14991. Ffind-name-dired
  14992. Search DIR recursively for files matching the globbing pattern PATTERN,
  14993. and run dired on those files.
  14994. PATTERN is a shell wildcard (not an Emacs regexp) and need not be quoted.
  14995. The command run (after changing into DIR) is
  14996.  
  14997.     find . -name 'PATTERN' -ls
  14998. Ffind-grep-dired
  14999. Find files in DIR containing a regexp ARG and start Dired on output.
  15000. The command run (after changing into DIR) is
  15001.  
  15002.     find . (-type f -exec test -r {} \;-exec grep -s ARG {} \; -ls
  15003.  
  15004. Thus ARG can also contain additional grep options.
  15005. Fedebug-eval-top-level-form
  15006. Evaluate a top level form, such as defun or defmacro.
  15007. This is like eval-defun, but with edebug calls.
  15008. Print its name in the minibuffer and leave point where it is,
  15009. or if an error occurs, leave point after it with mark at the original point.
  15010. Vglobal-edebug-prefix
  15011. Prefix key for global edebug commands, available from any buffer.
  15012. Fediff-show-registry
  15013. Display Ediff's registry.
  15014. Felectric-buffer-list
  15015. Pops up a buffer describing the set of Emacs buffers.
  15016. Vaguely like ITS lunar select buffer; combining typeoutoid buffer
  15017. listing with menuoid buffer selection.
  15018.  
  15019. If the very next character typed is a space then the buffer list
  15020. window disappears.  Otherwise, one may move around in the
  15021. buffer list window, marking buffers to be selected, saved or deleted.
  15022.  
  15023. To exit and select a new buffer, type a space when the cursor is on the
  15024. appropriate line of the buffer-list window.
  15025.  
  15026. Other commands are much like those of buffer-menu-mode.
  15027.  
  15028. Calls value of `electric-buffer-menu-mode-hook' on entry if non-nil.
  15029.  
  15030. \{electric-buffer-menu-mode-map}
  15031. FElectric-command-history-redo-expression
  15032. Edit current history line in minibuffer and execute result.
  15033. With prefix argument NOCONFIRM, execute current line as-is without editing.
  15034. Felectric-command-history
  15035. \<electric-history-map>Major mode for examining and redoing commands from `command-history'.
  15036. This pops up a window with the Command History listing.
  15037. The number of command listed is controlled by `list-command-history-max'.
  15038. The command history is filtered by `list-command-history-filter' if non-nil.
  15039. Combines typeout Command History list window with menu like selection
  15040. of an expression from the history for re-evaluation in the *original* buffer.
  15041.  
  15042. The history displayed is filtered by `list-command-history-filter' if non-nil.
  15043.  
  15044. This pops up a window with the Command History listing.  If the very
  15045. next character typed is Space, the listing is killed and the previous
  15046. window configuration is restored.  Otherwise, you can browse in the
  15047. Command History with  Return  moving down and  Delete  moving up, possibly
  15048. selecting an expression to be redone with Space or quitting with `Q'.
  15049.  
  15050. Like Emacs-Lisp mode except that characters do not insert themselves and
  15051. Tab and Linefeed do not indent.  Instead these commands are provided:
  15052. \{electric-history-map}
  15053.  
  15054. Calls the value of `electric-command-history-hook' if that is non-nil.
  15055. The Command History listing is recomputed each time this mode is invoked.
  15056. Fevi
  15057. Start vi emulation in this buffer.
  15058. Fset-gosmacs-bindings
  15059. Rebind some keys globally to make GNU Emacs resemble Gosling Emacs.
  15060. Use \[set-gnu-bindings] to restore previous global bindings.
  15061. Fconvert-mocklisp-buffer
  15062. Convert buffer of Mocklisp code to real Lisp that GNU Emacs can run.
  15063. Fteco-command
  15064. Read and execute a Teco command string.
  15065. Ftpu-edt-on
  15066. Turn on TPU/edt emulation.
  15067. Fmake-term
  15068. Make a term process NAME in a buffer, running PROGRAM.
  15069. The name of the buffer is made by surrounding NAME with `*'s.
  15070. If there is already a running process in that buffer, it is not restarted.
  15071. Optional third arg STARTFILE is the name of a file to send the contents of to 
  15072. the process.  Any more args are arguments to PROGRAM.
  15073. Fterm
  15074. Start a terminal-emulator in a new buffer.
  15075. Ftgdb
  15076. Run gdb on program FILE in buffer *tgud-FILE*.
  15077. The directory containing FILE becomes the initial working directory
  15078. and source-file directory for your debugger.
  15079. Ftsdb
  15080. Run sdb on program FILE in buffer *tgud-FILE*.
  15081. The directory containing FILE becomes the initial working directory
  15082. and source-file directory for your debugger.
  15083. Ftdbx
  15084. Run dbx on program FILE in buffer *tgud-FILE*.
  15085. The directory containing FILE becomes the initial working directory
  15086. and source-file directory for your debugger.
  15087. Ftxdb
  15088. Run xdb on program FILE in buffer *tgud-FILE*.
  15089. The directory containing FILE becomes the initial working directory
  15090. and source-file directory for your debugger.
  15091.  
  15092. You can set the variable 'tgud-xdb-directories' to a list of program source
  15093. directories if your program contains sources from more than one directory.
  15094. Ftperldb
  15095. Run perldb on program FILE in buffer *tgud-FILE*.
  15096. The directory containing FILE becomes the initial working directory
  15097. and source-file directory for your debugger.
  15098. Vtshell-prompt-pattern
  15099. Regexp to match prompts in the inferior shell.
  15100. Defaults to "^[^#$%>\n]*[#$%>] *", which works pretty well.
  15101. This variable is used to initialise `term-prompt-regexp' in the 
  15102. shell buffer.
  15103.  
  15104. The pattern should probably not match more than one line.  If it does,
  15105. tshell-mode may become confused trying to distinguish prompt from input
  15106. on lines which don't start with a prompt.
  15107.  
  15108. This is a fine thing to set in your `.emacs' file.
  15109. Ftshell
  15110. Run an inferior shell, with I/O through buffer *shell*.
  15111. If buffer exists but shell process is not running, make new shell.
  15112. If buffer exists and shell process is running, just switch to buffer `*shell*'.
  15113. Program used comes from variable `explicit-shell-file-name',
  15114.  or (if that is nil) from the ESHELL environment variable,
  15115.  or else from SHELL if there is no ESHELL.
  15116. If a file `~/.emacs_SHELLNAME' exists, it is given as initial input
  15117.  (Note that this may lose due to a timing error if the shell
  15118.   discards input when it starts up.)
  15119. The buffer is put in Tshell mode, giving commands for sending input
  15120. and controlling the subjobs of the shell.  See `tshell-mode'.
  15121. See also the variable `tshell-prompt-pattern'.
  15122.  
  15123. The shell file name (sans directories) is used to make a symbol name
  15124. such as `explicit-csh-args'.  If that symbol is a variable,
  15125. its value is used as a list of arguments when invoking the shell.
  15126. Otherwise, one argument `-i' is passed to the shell.
  15127.  
  15128. (Type \[describe-mode] in the shell buffer for a list of commands.)
  15129. Fblackbox
  15130. Play blackbox.  Optional prefix argument is the number of balls;
  15131. the default is 4.
  15132.  
  15133. What is blackbox?
  15134.  
  15135. Blackbox is a game of hide and seek played on an 8 by 8 grid (the
  15136. Blackbox).  Your opponent (Emacs, in this case) has hidden several
  15137. balls (usually 4) within this box.  By shooting rays into the box and
  15138. observing where they emerge it is possible to deduce the positions of
  15139. the hidden balls.  The fewer rays you use to find the balls, the lower
  15140. your score.
  15141.  
  15142. Overview of play:
  15143.  
  15144. \<blackbox-mode-map>To play blackbox, type \[blackbox].  An optional prefix argument
  15145. specifies the number of balls to be hidden in the box; the default is
  15146. four.
  15147.  
  15148. The cursor can be moved around the box with the standard cursor
  15149. movement keys.
  15150.  
  15151. To shoot a ray, move the cursor to the edge of the box and press SPC.
  15152. The result will be determined and the playfield updated.
  15153.  
  15154. You may place or remove balls in the box by moving the cursor into the
  15155. box and pressing \[bb-romp].
  15156.  
  15157. When you think the configuration of balls you have placed is correct,
  15158. press \[bb-done].  You will be informed whether you are correct or
  15159. not, and be given your score.  Your score is the number of letters and
  15160. numbers around the outside of the box plus five for each incorrectly
  15161. placed ball.  If you placed any balls incorrectly, they will be
  15162. indicated with `x', and their actual positions indicated with `o'.
  15163.  
  15164. Details:
  15165.  
  15166. There are three possible outcomes for each ray you send into the box:
  15167.  
  15168.     Detour: the ray is deflected and emerges somewhere other than
  15169.         where you sent it in.  On the playfield, detours are
  15170.         denoted by matching pairs of numbers -- one where the
  15171.         ray went in, and the other where it came out.
  15172.  
  15173.     Reflection: the ray is reflected and emerges in the same place
  15174.         it was sent in.  On the playfield, reflections are
  15175.         denoted by the letter `R'.
  15176.  
  15177.     Hit:    the ray strikes a ball directly and is absorbed.  It does
  15178.         not emerge from the box.  On the playfield, hits are
  15179.         denoted by the letter `H'.
  15180.  
  15181. The rules for how balls deflect rays are simple and are best shown by
  15182. example.
  15183.  
  15184. As a ray approaches a ball it is deflected ninety degrees.  Rays can
  15185. be deflected multiple times.  In the diagrams below, the dashes
  15186. represent empty box locations and the letter `O' represents a ball.
  15187. The entrance and exit points of each ray are marked with numbers as
  15188. described under "Detour" above.  Note that the entrance and exit
  15189. points are always interchangeable.  `*' denotes the path taken by the
  15190. ray.
  15191.  
  15192. Note carefully the relative positions of the ball and the ninety
  15193. degree deflection it causes.
  15194.  
  15195.     1                                            
  15196.   - * - - - - - -         - - - - - - - -         - - - - - - - -       
  15197.   - * - - - - - -         - - - - - - - -         - - - - - - - -       
  15198. 1 * * - - - - - -         - - - - - - - -         - O - - - - O -       
  15199.   - - O - - - - -         - - O - - - - -         - - * * * * - -
  15200.   - - - - - - - -         - - - * * * * * 2     3 * * * - - * - -
  15201.   - - - - - - - -         - - - * - - - -         - - - O - * - -      
  15202.   - - - - - - - -         - - - * - - - -         - - - - * * - -       
  15203.   - - - - - - - -         - - - * - - - -         - - - - * - O -       
  15204.                                 2                         3
  15205.  
  15206. As mentioned above, a reflection occurs when a ray emerges from the same point
  15207. it was sent in.  This can happen in several ways:
  15208.  
  15209.                                                                            
  15210.   - - - - - - - -         - - - - - - - -          - - - - - - - -
  15211.   - - - - O - - -         - - O - O - - -          - - - - - - - -
  15212. R * * * * - - - -         - - - * - - - -          O - - - - - - -
  15213.   - - - - O - - -         - - - * - - - -        R - - - - - - - -
  15214.   - - - - - - - -         - - - * - - - -          - - - - - - - -
  15215.   - - - - - - - -         - - - * - - - -          - - - - - - - -
  15216.   - - - - - - - -       R * * * * - - - -          - - - - - - - -
  15217.   - - - - - - - -         - - - - O - - -          - - - - - - - -
  15218.  
  15219. In the first example, the ray is deflected downwards by the upper
  15220. ball, then left by the lower ball, and finally retraces its path to
  15221. its point of origin.  The second example is similar.  The third
  15222. example is a bit anomalous but can be rationalized by realizing the
  15223. ray never gets a chance to get into the box.  Alternatively, the ray
  15224. can be thought of as being deflected downwards and immediately
  15225. emerging from the box.
  15226.  
  15227. A hit occurs when a ray runs straight into a ball:
  15228.  
  15229.   - - - - - - - -         - - - - - - - -          - - - - - - - -
  15230.   - - - - - - - -         - - - - - - - -          - - - - O - - -
  15231.   - - - - - - - -         - - - - O - - -        H * * * * - - - -
  15232.   - - - - - - - -       H * * * * O - - -          - - - * - - - -
  15233.   - - - - - - - -         - - - - O - - -          - - - O - - - -
  15234. H * * * O - - - -         - - - - - - - -          - - - - - - - -
  15235.   - - - - - - - -         - - - - - - - -          - - - - - - - -
  15236.   - - - - - - - -         - - - - - - - -          - - - - - - - -
  15237.  
  15238. Be sure to compare the second example of a hit with the first example of
  15239. a reflection.
  15240. Fconx-buffer
  15241. Absorb the text in the current buffer into the tree.
  15242. Fconx-region
  15243. Absorb the text in the current region into the tree.
  15244. Fconx
  15245. Generate some random sentences in the *conx* buffer.
  15246. Fconx-load
  15247. Load in a CONX database written by the \[conx-save] command.
  15248. This clears the database currently in memory.
  15249. Fcookie
  15250. Return a random phrase from PHRASE-FILE.  When the phrase file
  15251. is read in, display STARTMSG at beginning of load, ENDMSG at end.
  15252. Fcookie-insert
  15253. Insert random phrases from PHRASE-FILE; COUNT of them.  When the phrase file
  15254. is read in, display STARTMSG at beginning of load, ENDMSG at end.
  15255. Fcookie-snarf
  15256. Reads in the PHRASE-FILE, returns it as a vector of strings.
  15257. Emit STARTMSG and ENDMSG before and after.  Caches the result; second
  15258. and subsequent calls on the same file won't go to disk.
  15259. Fshuffle-vector
  15260. Randomly permute the elements of VECTOR (all permutations equally likely)
  15261. Fdissociated-press
  15262. Dissociate the text of the current buffer.
  15263. Output goes in buffer named *Dissociation*,
  15264. which is redisplayed each time text is added to it.
  15265. Every so often the user must say whether to continue.
  15266. If ARG is positive, require ARG chars of continuity.
  15267. If ARG is negative, require -ARG words of continuity.
  15268. Default is 2.
  15269. Fdoctor
  15270. Switch to *doctor* buffer and start giving psychotherapy.
  15271. Fdunnet
  15272. Switch to *dungeon* buffer and start game.
  15273. Fflame
  15274. Generate ARG (default 1) sentences of half-crazed gibberish.
  15275. Fgomoku
  15276. Start a Gomoku game between you and Emacs.
  15277. If a game is in progress, this command allow you to resume it.
  15278. If optional arguments N and M are given, an N by M board is used.
  15279.  
  15280. You and Emacs play in turn by marking a free square. You mark it with X
  15281. and Emacs marks it with O. The winner is the first to get five contiguous
  15282. marks horizontally, vertically or in diagonal.
  15283. You play by moving the cursor over the square you choose and hitting
  15284. \<gomoku-mode-map>\[gomoku-human-plays].
  15285. Use \[describe-mode] for more info.
  15286. Fhanoi
  15287. Towers of Hanoi diversion.  Argument is number of rings.
  15288. Flife
  15289. Run Conway's Life simulation.
  15290. The starting pattern is randomly selected.  Prefix arg (optional first
  15291. arg non-nil from a program) is the number of seconds to sleep between
  15292. generations (this defaults to 1).
  15293. Fmpuz
  15294. Multiplication puzzle with GNU Emacs.
  15295. Fspook
  15296. Adds that special touch of class to your outgoing mail.
  15297. Fyow
  15298. Return or display a random Zippy quotation.  With prefix arg, insert it.
  15299. Finsert-zippyism
  15300. Prompt with completion for a known Zippy quotation, and insert it at point.
  15301. Fpsychoanalyze-pinhead
  15302. Zippy goes to the analyst.
  15303. Fgnus
  15304. Read network news.
  15305. If optional argument CONFIRM is non-nil, ask NNTP server.
  15306. Fgnus-batch-kill
  15307. Run batched KILL.
  15308. Usage: emacs -batch -l gnus -f gnus-batch-kill NEWSGROUP ...
  15309. Fgnus-post-news
  15310. Begin editing a new USENET news article to be posted.
  15311. Type \[describe-mode] once editing the article to get a list of commands.
  15312. Fgnusutil-add-group
  15313. Specify that news group NAME is encoded in CODING-SYSTEM.
  15314. Subject and article buffers are automatically converted appropriately.
  15315. If CODING-SYSTEM is cons, the car/cdr part is regarded as coding-system
  15316. for read/write respectively.
  15317. Fgnusutil-initialize
  15318. Do several settings for GNUS to enable automatic code conversion.
  15319. Fhtml-mode
  15320. Major mode for editing HTML hypertext documents.  Special commands:\{html-mode-map}
  15321. Turning on html-mode calls the value of the variable html-mode-hook,
  15322. if that value is non-nil.
  15323.  
  15324. More extensive documentation is available in the file 'html-mode.el'.
  15325. The latest (possibly unstable) version of this file will always be available
  15326. on anonymous FTP server ftp.ncsa.uiuc.edu in /Mosaic/elisp.
  15327. Fhtml-view-start-mosaic
  15328. Start Mosaic.
  15329. Fhtml-view-view-file
  15330. View an html file with Mosaic.
  15331. Fhtml-view-view-buffer
  15332. View html buffer with Mosaic.
  15333. If BUFFER-TO-VIEW is nil, then the current buffer is used.
  15334. Fhtml-view-goto-url
  15335. Goto an URL in Mosaic.
  15336. Fhtml-view-get-display
  15337. Get the display for Mosaic.
  15338. Ftmpl-expand-templates-in-region
  15339. Expand the templates in the region from BEGIN to END.
  15340. If BEGIN and and are nil, then the current region is used.
  15341. Ftmpl-expand-templates-in-buffer
  15342. Expand all templates in the current buffer.
  15343. Fhmail:compose
  15344. Compose mail with ADDRESS and evaluation of EXPR.
  15345. Optional SUBJECT and HELP message may also be given.
  15346. Fsmart-info
  15347. Walks through Info documentation networks using one key or mouse key.
  15348.  
  15349. If key is pressed within:
  15350.  (1) the first line of an Info Menu Entry or Cross Reference, the desired node
  15351.        is found;
  15352.  (2) the Up, Next, or Previous entries of a Node Header (first line),
  15353.        the desired node is found;
  15354.  (3) the File entry of a Node Header (first line),       
  15355.        the 'Top' node within that file is found;
  15356.  (4) at the end of the current node, the Next node is found (this will
  15357.        descend subtrees if the function 'Info-global-next' is bound);
  15358.  (5) anywhere else (e.g. at the end of a line), the current node entry is
  15359.        scrolled up one windowful.
  15360.  
  15361. Returns t if key is pressed within an Info Node Header, Cross Reference,
  15362. or a Menu; otherwise returns nil.
  15363. Fsmart-info-assist
  15364. Walks through Info documentation networks using one assist-key or mouse assist-key.
  15365.  
  15366. If assist-key is pressed within:
  15367.  (1) the first line of an Info Menu Entry or Cross Reference, the desired node
  15368.        is found;
  15369.  (2) the Up, Next, or Previous entries of a Node Header (first line),
  15370.        the last node in the history list is found;
  15371.  (3) the File entry of a Node Header (first line),       
  15372.        the 'DIR' root-level node is found;
  15373.  (4) at the end of the current node, the Previous node is found (this will
  15374.        return from subtrees if the function 'Info-global-prev is bound);
  15375.  (5) anywhere else (e.g. at the end of a line), the current node entry is
  15376.        scrolled down one windowful.
  15377.  
  15378. Returns t if assist-key is pressed within an Info Node Header, Cross Reference,
  15379. or a Menu; otherwise returns nil.
  15380. FInfo-handle-in-note
  15381. Follows an Info cross-reference.
  15382. If point is within the first line of an Info note (cross-reference), follows
  15383. cross-reference and returns t; otherwise returns nil.
  15384. Fsmart-asm-at-tag-p
  15385. Return assembly tag name that point is within, else nil.
  15386. Fsmart-c-at-tag-p
  15387. Return C tag name that point is within, else nil.
  15388. Fsmart-c++
  15389. Jumps to the definition of optional C++ IDENTIFIER or the one at point.
  15390. Optional second arg NEXT means jump to next matching C++ tag.
  15391.  
  15392. It assumes that its caller has already checked that the key was pressed in an
  15393. appropriate buffer and has moved the cursor to the selected buffer.
  15394.  
  15395. If:
  15396.  (1) on a '#include' statement, the include file is displayed;
  15397.      Look for include file in directory lists 'smart-c-cpp-include-dirs'
  15398.      and 'smart-c-include-dirs'.
  15399.  (2) on a C++ identifier, the identifier definition is displayed,
  15400.      assuming the identifier is found within an 'etags' generated tag file
  15401.      in the current directory or any of its ancestor directories.
  15402.  (3) if 'smart-c-use-lib-man' is non-nil, the C++ identifier is
  15403.      recognized as a library symbol, and a man page is found for the
  15404.      identifier, then the man page is displayed.
  15405. Fsmart-c++-oobr
  15406. Jumps to the definition of selected C++ construct via OO-Browser support.
  15407. Optional JUNK is ignored.  Does nothing if the OO-Browser is not available.
  15408.  
  15409. It assumes that its caller has already checked that the key was pressed in an
  15410. appropriate buffer and has moved the cursor to the selected buffer.
  15411.  
  15412. If key is pressed:
  15413.  (1) on a '#include' statement, the include file is displayed;
  15414.      Look for include file in directory lists 'smart-c-cpp-include-dirs'
  15415.      and 'smart-c-include-dirs'.
  15416.  (2) within a method declaration, its definition is displayed;
  15417.  (3) on a class name, the class definition is shown.
  15418.  
  15419.  (2) and (3) require that an OO-Browser Environment has been loaded with
  15420.      the {M-x br-env-load RTN} command.
  15421. Fsmart-fortran-at-tag-p
  15422. Return Fortran tag name that point is within, else nil.
  15423. Fsmart-objc
  15424. Jumps to the definition of optional Objective-C IDENTIFIER or the one at point.
  15425. Optional second arg NEXT means jump to next matching Objective-C tag.
  15426.  
  15427. It assumes that its caller has already checked that the key was pressed in an
  15428. appropriate buffer and has moved the cursor to the selected buffer.
  15429.  
  15430. If:
  15431.  (1) on a '#include' statement, the include file is displayed;
  15432.      Look for include file in directory lists 'smart-c-cpp-include-dirs'
  15433.      and 'smart-c-include-dirs'.
  15434.  (2) on an Objective-C identifier, the identifier definition is displayed,
  15435.      assuming the identifier is found within an 'etags' generated tag file
  15436.      in the current directory or any of its ancestor directories.
  15437.  (3) if 'smart-c-use-lib-man' is non-nil, the Objective-C identifier is
  15438.      recognized as a library symbol, and a man page is found for the
  15439.      identifier, then the man page is displayed.
  15440. Fsmart-objc-oobr
  15441. Jumps to the definition of selected Objective-C construct via OO-Browser support.
  15442. Optional JUNK is ignored.  Does nothing if the OO-Browser is not available.
  15443.  
  15444. It assumes that its caller has already checked that the key was pressed in an
  15445. appropriate buffer and has moved the cursor to the selected buffer.
  15446.  
  15447. If key is pressed:
  15448.  (1) on a '#include' statement, the include file is displayed;
  15449.      Look for include file in directory lists 'smart-c-cpp-include-dirs'
  15450.      and 'smart-c-include-dirs'.
  15451.  (2) within a method declaration, its definition is displayed;
  15452.  (3) on a class name, the class definition is shown.
  15453.  
  15454.  (2) and (3) require that an OO-Browser Environment has been loaded with
  15455.      the {M-x br-env-load RTN} command.
  15456. Fsmart-tags-file-path
  15457. Expand relative FILE name by looking it up in the nearest tags file.
  15458. Return FILE unchanged if it exists relative to the current directory or
  15459. cannot be expanded via a tags file.
  15460. Fsmart-tags-file
  15461. Return appropriate tags file name for CURR-FILENAME or 'tags-file-name'.
  15462. Fvar:append
  15463. Appends to value held by VAR-SYMBOL-NAME, LIST-TO-ADD.  Returns new value.
  15464. If VAR-SYMBOL-NAME is unbound, it is set to LIST-TO-ADD.
  15465. Often used to append to 'hook' variables.
  15466. Fwconfig-add-by-name
  15467. Saves the current window configuration under the string NAME.
  15468. When called interactively and a window configuration already exists under
  15469. NAME, confirms whether or not to replace it.
  15470. Fwconfig-delete-by-name
  15471. Deletes window configuration saved under NAME.
  15472. Fwconfig-restore-by-name
  15473. Restores window configuration saved under NAME.
  15474. Fwconfig-delete-pop
  15475. Replaces current window config with most recently saved config in ring.
  15476. Then deletes this new configuration from the ring.
  15477. Fwconfig-ring-save
  15478. Saves the current window configuration onto the save ring.
  15479. Use {\[wconfig-yank-pop]} to restore it at a later time.
  15480. Fwconfig-yank-pop
  15481. Replaces current window config with prefix arg Nth prior one in save ring.
  15482. Interactively, default value of N = 1, meaning the last saved window
  15483. configuration is displayed.
  15484.  
  15485. The sequence of window configurations wraps around, so that after the oldest
  15486. one comes the newest one.
  15487. Frolo-logic
  15488. Apply FUNC to all entries in optional IN-BUFS, display entries where FUNC is non-nil.
  15489. If IN-BUFS is nil, 'rolo-file-list' is used.  If optional COUNT-ONLY is
  15490. non-nil, don't display entries, return count of matching entries only.  If
  15491. optional INCLUDE-SUB-ENTRIES flag is non-nil, FUNC will be applied across all
  15492. sub-entries at once.  Default is to apply FUNC to each entry and sub-entry
  15493. separately.  Entries are displayed with all of their sub-entries unless
  15494. INCLUDE-SUB-ENTRIES is nil and optional NO-SUB-ENTRIES-OUT flag is non-nil.
  15495. FUNC should use the free variables 'start' and 'end' which contain the limits
  15496. of the region on which it should operate.  Returns number of applications of
  15497. FUNC that return non-nil.
  15498. Frolo-add
  15499. Adds a new entry in personal rolodex for NAME.
  15500. Last name first is best, e.g. "Smith, John".
  15501. With prefix argument, prompts for optional FILE to add entry within.
  15502. NAME may be of the form: parent/child to insert child below a parent
  15503. entry which begins with the parent string.
  15504. Frolo-display-matches
  15505. Display optional DISPLAY-BUF buffer of previously found rolodex matches.
  15506. If DISPLAY-BUF is nil, use the value in 'rolo-display-buffer'.
  15507. Second arg RETURN-TO-BUFFER is the buffer to leave point within after the display.
  15508. Frolo-edit
  15509. Edits a rolodex entry given by optional NAME within 'rolo-file-list'.
  15510. With prefix argument, prompts for optional FILE to locate entry within.
  15511. With no NAME arg, simply displays FILE or first entry in 'rolo-file-list' in an
  15512. editable mode.  NAME may be of the form: parent/child to edit child below a
  15513. parent entry which begins with the parent string.
  15514. Frolo-fgrep
  15515. Display rolodex entries matching STRING.
  15516. To a maximum of optional prefix arg MAX-MATCHES, in file(s) from optional
  15517. ROLO-FILE or rolo-file-list.  Default is to find all matching entries.  Each
  15518. entry is displayed with all of its sub-entries.  Optional COUNT-ONLY non-nil
  15519. means don't retrieve and don't display matching entries.  Optional NO-DISPLAY
  15520. non-nil means retrieve entries but don't display.
  15521.  
  15522. Nil value of MAX-MATCHES means find all matches, t value means find all matches
  15523. but omit file headers, negative values mean find up to the inverse of that
  15524. number of entries and omit file headers.
  15525.  
  15526. Returns number of entries matched.  See also documentation for the variable
  15527. rolo-file-list.
  15528. Frolo-grep
  15529. Display rolodex entries matching REGEXP.
  15530. To a maximum of prefix arg MAX-MATCHES, in buffer(s) from optional ROLO-BUFS or
  15531. rolo-file-list.  Default is to find all matching entries.  Each entry is
  15532. displayed with all of its sub-entries.  Optional COUNT-ONLY non-nil means don't
  15533. retrieve and don't display matching entries.  Optional NO-DISPLAY non-nil
  15534. means retrieve entries but don't display.
  15535.  
  15536. Nil value of MAX-MATCHES means find all matches, t value means find all matches
  15537. but omit file headers, negative values mean find up to the inverse of that
  15538. number of entries and omit file headers.
  15539.  
  15540. Returns number of entries matched.  See also documentation for the variable
  15541. rolo-file-list.
  15542. Frolo-kill
  15543. Kills a rolodex entry given by NAME within 'rolo-file-list'.
  15544. With prefix argument, prompts for optional FILE to locate entry within.
  15545. NAME may be of the form: parent/child to kill child below a parent entry
  15546. which begins with the parent string.
  15547. Returns t if entry is killed, nil otherwise.
  15548. Frolo-sort
  15549. Sorts up to 14 levels of entries in ROLO-FILE (default is personal rolo).
  15550. Assumes entries are delimited by one or more '*'characters.
  15551. Returns list of number of groupings at each entry level.
  15552. Frolo-yank
  15553. Inserts at point the first rolodex entry matching NAME.
  15554. With optional prefix arg, REGEXP-P, treats NAME as a regular expression instead
  15555. of a string.
  15556. Fmh-smail
  15557. Compose and send mail with the MH mail system.
  15558. This function is an entry point to mh-e, the Emacs front end
  15559. to the MH mail system.
  15560.  
  15561. See documentation of `\[mh-send]' for more details on composing mail.
  15562. Fmh-smail-other-window
  15563. Compose and send mail in other window with the MH mail system.
  15564. This function is an entry point to mh-e, the Emacs front end
  15565. to the MH mail system.
  15566.  
  15567. See documentation of `\[mh-send]' for more details on composing mail.
  15568. Fmh-letter-mode
  15569. Mode for composing letters in mh-e.\<mh-letter-mode-map>
  15570. When you have finished composing, type \[mh-send-letter] to send the message
  15571. using the MH mail handling system.
  15572. See the documentation for \[mh-edit-mhn] for information on composing MIME
  15573. messages.
  15574.  
  15575. \{mh-letter-mode-map}
  15576.  
  15577. Variables controlling this mode (defaults in parentheses):
  15578.  
  15579.  mh-delete-yanked-msg-window (nil)
  15580.     If non-nil, \[mh-yank-cur-msg] will delete any windows displaying
  15581.     the yanked message.
  15582.  
  15583.  mh-yank-from-start-of-msg (t)
  15584.     If non-nil, \[mh-yank-cur-msg] will include the entire message.
  15585.     If `body', just yank the body (no header).
  15586.     If nil, only the portion of the message following the point will be yanked.
  15587.     If there is a region, this variable is ignored.
  15588.  
  15589.  mh-ins-buf-prefix ("> ")
  15590.     String to insert before each non-blank line of a message as it is
  15591.     inserted in a draft letter.
  15592.  
  15593.  mh-signature-file-name ("~/.signature")
  15594.     File to be inserted into message by \[mh-insert-signature].
  15595.  
  15596. Upon invoking mh-letter-mode, text-mode-hook and mh-letter-mode-hook are
  15597. invoked with no args, if those values are non-nil.
  15598. Fmh-rmail
  15599. Inc(orporate) new mail with MH, or, with arg, scan an MH mail folder.
  15600. This function is an entry point to mh-e, the Emacs front end
  15601. to the MH mail system.
  15602. Fmh-version
  15603. Display version information about mh-e and the MH mail handling system.
  15604. Vmh-mime-content-types
  15605. Legal MIME content types.  See documentation for \[mh-edit-mhn].
  15606. Fada-mode
  15607. Ada Mode is the major mode for editing Ada code.
  15608.  
  15609. Bindings are as follows: (Note: 'LFD' is control-j.)
  15610.  
  15611.  Indent line                                          '\[ada-tab]'
  15612.  Indent line, insert newline and indent the new line. '\[newline-and-indent]'
  15613.  
  15614.  Re-format the parameter-list point is in             '\[ada-format-paramlist]'
  15615.  Indent all lines in region                           '\[ada-indent-region]'
  15616.  Call external pretty printer program                 '\[ada-call-pretty-printer]'
  15617.  
  15618.  Adjust case of identifiers and keywords in region    '\[ada-adjust-case-region]'
  15619.  Adjust case of identifiers and keywords in buffer    '\[ada-adjust-case-buffer]'
  15620.  
  15621.  Call EXTERNAL pretty printer (if you have one)       '\[ada-call-pretty-printer]'
  15622.  
  15623.  Fill comment paragraph                               '\[ada-fill-comment-paragraph]'
  15624.  Fill comment paragraph and justify each line         '\[ada-fill-comment-paragraph-justify]'
  15625.  Fill comment paragraph, justify and append postfix   '\[ada-fill-comment-paragraph-postfix]'
  15626.  
  15627.  Next func/proc/task '\[ada-next-procedure]'    Previous func/proc/task '\[ada-previous-procedure]'
  15628.  Next package        '\[ada-next-package]'  Previous package        '\[ada-previous-package]'
  15629.  
  15630.  Goto matching start of current 'end ...;'            '\[ada-move-to-start]'
  15631.  Goto end of current block                            '\[ada-move-to-end]'
  15632.  
  15633. Comments are handled using standard GNU Emacs conventions, including:
  15634.  Start a comment                                      '\[indent-for-comment]'
  15635.  Comment region                                       '\[comment-region]'
  15636.  Uncomment region                                     '\[ada-uncomment-region]'
  15637.  Continue comment on next line                        '\[indent-new-comment-line]'
  15638.  
  15639. If you use imenu.el:
  15640.  Display index-menu of functions & procedures         '\[imenu]'
  15641.  
  15642. If you use find-file.el:
  15643.  Switch to other file (Body <-> Spec)                 '\[ff-find-other-file]'
  15644.                                                    or '\[ff-mouse-find-other-file]
  15645.  Switch to other file in other window                 '\[ada-ff-other-window]'
  15646.                                                    or '\[ff-mouse-find-other-file-other-window]
  15647.  If you use this function in a spec and no body is available, it gets created
  15648.  with body stubs.
  15649.  
  15650. If you use ada-xref.el:
  15651.  Goto declaration:          '\[ada-point-and-xref]' on the identifier
  15652.                          or '\[ada-goto-declaration]' with point on the identifier
  15653.  Complete identifier:       '\[ada-complete-identifier]'
  15654.  Execute Gnatf:             '\[ada-gnatf-current]'
  15655. Fada-make-filename-from-adaname
  15656. determine the filename of a package/procedure from its own Ada name.
  15657. Fasm-mode
  15658. Major mode for editing typical assembler code.
  15659. Features a private abbrev table and the following bindings:
  15660.  
  15661. \[asm-colon]    outdent a preceding label, tab to next tab stop.
  15662. \[tab-to-tab-stop]    tab to next tab stop.
  15663. \[asm-newline]    newline, then tab to next tab stop.
  15664. \[asm-comment]    smart placement of assembler comments.
  15665.  
  15666. The character used for making comments is set by the variable
  15667. `asm-comment-char' (which defaults to `?;').
  15668.  
  15669. Alternatively, you may set this variable in `asm-set-comment-hook', which is
  15670. called near the beginning of mode initialization.
  15671.  
  15672. Turning on Asm mode runs the hook `asm-mode-hook' at the end of initialization.
  15673.  
  15674. Special commands:\{asm-mode-map}
  15675.  
  15676. Fauto-show-mode
  15677. Turn automatic horizontal scroll mode on or off.
  15678. With arg, turn auto scrolling on if arg is positive, off otherwise.
  15679. Fawk-mode
  15680. Major mode for editing AWK code.
  15681. This is much like C mode except for the syntax of comments.  It uses
  15682. the same keymap as C mode and has the same variables for customizing
  15683. indentation.  It has its own abbrev table and its own syntax table.
  15684.  
  15685. Turning on AWK mode calls the value of the variable `awk-mode-hook'
  15686. with no args, if that value is non-nil.
  15687. Fbibtex-mode
  15688. Major mode for editing bibtex files.
  15689.  
  15690. \{bibtex-mode-map}
  15691.  
  15692. A command such as \[bibtex-Book] will outline the fields for a BibTeX book entry.
  15693.  
  15694. The optional fields start with the string OPT, and thus ignored by BibTeX.
  15695. The OPT string may be removed from a field with \[bibtex-remove-OPT].
  15696. \[bibtex-kill-optional-field] kills the current optional field entirely.
  15697. \[bibtex-remove-double-quotes] removes the double-quotes around the text of
  15698. the current field.  \[bibtex-empty-field] replaces the text of the current
  15699. field with the default "".
  15700.  
  15701. The command \[bibtex-clean-entry] cleans the current entry, i.e. (i) removes
  15702. double-quotes from entirely numerical fields, (ii) removes OPT from all
  15703. non-empty optional fields, (iii) removes all empty optional fields, and (iv)
  15704. checks that no non-optional fields are empty.
  15705.  
  15706. Use \[bibtex-find-text] to position the dot at the end of the current field.
  15707. Use \[bibtex-next-field] to move to end of the next field.
  15708.  
  15709. The following may be of interest as well:
  15710.  
  15711.   Functions:
  15712.     find-bibtex-duplicates
  15713.     find-bibtex-entry-location
  15714.     hide-bibtex-entry-bodies
  15715.     sort-bibtex-entries
  15716.     validate-bibtex-buffer
  15717.  
  15718.   Variables:
  15719.     bibtex-clean-entry-zap-empty-opts
  15720.     bibtex-entry-field-alist
  15721.     bibtex-include-OPTannote
  15722.     bibtex-include-OPTcrossref
  15723.     bibtex-include-OPTkey
  15724.     bibtex-maintain-sorted-entries
  15725.     bibtex-mode-user-optional-fields
  15726.  
  15727. Fields:
  15728.     address
  15729.            Publisher's address
  15730.     annote
  15731.            Long annotation used for annotated bibliographies (begins sentence)
  15732.     author
  15733.            Name(s) of author(s), in BibTeX name format
  15734.     booktitle
  15735.            Book title when the thing being referenced isn't the whole book.
  15736.            For book entries, the title field should be used instead.
  15737.     chapter
  15738.            Chapter number
  15739.     crossref
  15740.        The database key of the entry being cross referenced.
  15741.     edition
  15742.            Edition of a book (e.g., "second")
  15743.     editor
  15744.            Name(s) of editor(s), in BibTeX name format.
  15745.            If there is also an author field, then the editor field should be
  15746.            for the book or collection that the work appears in
  15747.     howpublished
  15748.             How something strange has been published (begins sentence)
  15749.     institution
  15750.            Sponsoring institution
  15751.     journal
  15752.            Journal name (macros are provided for many)
  15753.     key
  15754.            Alphabetizing and labeling key (needed when no author or editor)
  15755.     month
  15756.            Month (macros are provided)
  15757.     note
  15758.            To help the reader find a reference (begins sentence)
  15759.     number
  15760.            Number of a journal or technical report
  15761.     organization
  15762.            Organization (sponsoring a conference)
  15763.     pages
  15764.            Page number or numbers (use `--' to separate a range)
  15765.     publisher
  15766.            Publisher name
  15767.     school
  15768.            School name (for theses)
  15769.     series
  15770.            The name of a series or set of books.
  15771.            An individual book will will also have it's own title
  15772.     title
  15773.            The title of the thing being referenced
  15774.     type
  15775.            Type of a technical report (e.g., "Research Note") to be used
  15776.            instead of the default "Technical Report"
  15777.     volume
  15778.            Volume of a journal or multivolume work
  15779.     year
  15780.            Year---should contain only numerals
  15781. ---------------------------------------------------------
  15782. Entry to this mode calls the value of bibtex-mode-hook if that value is
  15783. non-nil.
  15784. Fc-macro-expand
  15785. Expand C macros in the region, using the C preprocessor.
  15786. Normally display output in temp buffer, but
  15787. prefix arg means replace the region with it.
  15788.  
  15789. `c-macro-preprocessor' specifies the preprocessor to use.
  15790. Prompt for arguments to the preprocessor (e.g. `-DDEBUG -I ./include')
  15791. if the user option `c-macro-prompt-flag' is non-nil.
  15792.  
  15793. Noninteractive args are START, END, SUBST.
  15794. For use inside Lisp programs, see also `c-macro-expansion'.
  15795. Ff90-mode
  15796. Major mode for editing Fortran 90 code in free format.
  15797.  
  15798. \[f90-indent-new-line] corrects current indentation and creates new indented line.
  15799. \[f90-indent-line] indents the current line correctly. 
  15800. \[f90-indent-subprogram] indents the current subprogram. 
  15801.  
  15802. Type `? or `\[help-command] to display a list of built-in abbrevs for F90 keywords.
  15803.  
  15804. Key definitions:
  15805. \{f90-mode-map}
  15806.  
  15807. Variables controlling indentation style and extra features:
  15808.  
  15809.  f90-do-indent
  15810.     Extra indentation within do blocks.  (default 3)
  15811.  f90-if-indent
  15812.     Extra indentation within if/select case/where/forall blocks. (default 3)
  15813.  f90-type-indent
  15814.     Extra indentation within type/interface/block-data blocks.  (default 3)
  15815.  f90-program-indent
  15816.     Extra indentation within program/module/subroutine/function blocks.
  15817.       (default 2)
  15818.  f90-continuation-indent
  15819.     Extra indentation applied to continuation lines.  (default 5)
  15820.  f90-comment-region
  15821.     String inserted by \[f90-comment-region] at start of each line in 
  15822.     region.  (default "!!!$")
  15823.  f90-indented-comment
  15824.     String holding the type of comment to be intended like code.
  15825.     This is a regular expression. (default "!")
  15826.  f90-directive-comment
  15827.     String of comment-like directive like "!HPF$", not to be indented.
  15828.     (default nil)
  15829.  f90-break-delimiters
  15830.     Regexp holding list of delimiters at which lines may be broken.
  15831.     (default "[-+*/><=,% \t]")
  15832.  f90-break-before-delimiters
  15833.     Non-nil causes `f90-do-auto-fill' to break lines before delimiters.
  15834.     (default t)
  15835.  f90-beginning-ampersand 
  15836.     Automatic insertion of & at beginning of continuation lines. (default t)
  15837.  f90-smart-end 
  15838.     From an END statement, check and fill the end using matching block start.
  15839.     Allowed values are 'blink, 'no-blink, and nil, which determine
  15840.     whether to blink the matching beginning.) (default 'blink)
  15841.  f90-auto-keyword-case
  15842.     Automatic change of case of keywords. (default nil)
  15843.     The possibilities are 'downcase-word, 'upcase-word, 'capitalize-word.
  15844.  f90-auto-hilit19  (default nil)
  15845.     Automatic highlighting (if hilit19 is used) at every indent or newline.
  15846.  f90-leave-line-no
  15847.     Do not left-justify line numbers. (default nil)
  15848.  f90-startup-message
  15849.     Set to nil to inhibit message first time F90 mode is used. (default t)
  15850.  f90-keywords
  15851.     List of keywords used for highlighting/upcase-keywords etc.
  15852.  
  15853. Turning on F90 mode calls the value of the variable `f90-mode-hook'
  15854. with no args, if that value is non-nil.
  15855. Vfortran-tab-mode-default
  15856. *Default tabbing/carriage control style for empty files in Fortran mode.
  15857. A value of t specifies tab-digit style of continuation control.
  15858. A value of nil specifies that continuation lines are marked
  15859. with a character in column 6.
  15860. Ffortran-mode
  15861. Major mode for editing Fortran code.
  15862. \[fortran-indent-line] indents the current Fortran line correctly. 
  15863. DO statements must not share a common CONTINUE.
  15864.  
  15865. Type ;? or ;\[help-command] to display a list of built-in abbrevs for Fortran keywords.
  15866.  
  15867. Key definitions:
  15868. \{fortran-mode-map}
  15869.  
  15870. Variables controlling indentation style and extra features:
  15871.  
  15872.  comment-start
  15873.     Normally nil in Fortran mode.  If you want to use comments
  15874.     starting with `!', set this to the string "!".
  15875.  fortran-do-indent
  15876.     Extra indentation within do blocks.  (default 3)
  15877.  fortran-if-indent
  15878.     Extra indentation within if blocks.  (default 3)
  15879.  fortran-structure-indent
  15880.     Extra indentation within structure, union, map and interface blocks.
  15881.     (default 3)
  15882.  fortran-continuation-indent
  15883.     Extra indentation applied to continuation statements.  (default 5)
  15884.  fortran-comment-line-extra-indent
  15885.     Amount of extra indentation for text within full-line comments. (default 0)
  15886.  fortran-comment-indent-style
  15887.     nil    means don't change indentation of text in full-line comments,
  15888.     fixed  means indent that text at `fortran-comment-line-extra-indent' beyond
  15889.            the value of `fortran-minimum-statement-indent-fixed' (for fixed
  15890.            format continuation style) or `fortran-minimum-statement-indent-tab'
  15891.            (for TAB format continuation style).
  15892.     relative  means indent at `fortran-comment-line-extra-indent' beyond the
  15893.            indentation for a line of code.
  15894.     (default 'fixed)
  15895.  fortran-comment-indent-char
  15896.     Single-character string to be inserted instead of space for
  15897.     full-line comment indentation.  (default " ")
  15898.  fortran-minimum-statement-indent-fixed
  15899.     Minimum indentation for Fortran statements in fixed format mode. (def.6)
  15900.  fortran-minimum-statement-indent-tab
  15901.     Minimum indentation for Fortran statements in TAB format mode. (default 9)
  15902.  fortran-line-number-indent
  15903.     Maximum indentation for line numbers.  A line number will get
  15904.     less than this much indentation if necessary to avoid reaching
  15905.     column 5.  (default 1)
  15906.  fortran-check-all-num-for-matching-do
  15907.     Non-nil causes all numbered lines to be treated as possible "continue"
  15908.     statements.  (default nil)
  15909.  fortran-blink-matching-if 
  15910.     From a Fortran ENDIF statement, blink the matching IF statement.
  15911.     Also, from an ENDDO statement, blink on matching DO [WHILE] statement.
  15912.     (default nil)
  15913.  fortran-continuation-string
  15914.     Single-character string to be inserted in column 5 of a continuation
  15915.     line.  (default "$")
  15916.  fortran-comment-region
  15917.     String inserted by \[fortran-comment-region] at start of each line in 
  15918.     region.  (default "c$$$")
  15919.  fortran-electric-line-number
  15920.     Non-nil causes line number digits to be moved to the correct column 
  15921.     as typed.  (default t)
  15922.  fortran-break-before-delimiters
  15923.     Non-nil causes `fortran-do-auto-fill' breaks lines before delimiters.
  15924.     (default t)
  15925.  fortran-startup-message
  15926.     Set to nil to inhibit message first time Fortran mode is used.
  15927.  
  15928. Turning on Fortran mode calls the value of the variable `fortran-mode-hook'
  15929. with no args, if that value is non-nil.
  15930. Fhs-hide-all
  15931. Hides all top-level blocks, displaying only first and last lines.
  15932. When done, point is repositioned at the beginning of the line, and
  15933. hs-hide-hooks is called.  See documentation for `run-hooks'.
  15934. Fhs-hide-block
  15935. Selects a block and hides it.  With prefix arg, reposition at end.
  15936. Block is defined as a sexp for lispish modes, mode-specific otherwise.
  15937. Comments are blocks, too.  Upon completion, point is at repositioned and
  15938. hs-hide-hooks is called.  See documentation for `run-hooks'.
  15939. Fhs-minor-mode
  15940. Toggle hideshow minor mode.
  15941. With ARG, turn hideshow minor mode on if ARG is positive, off otherwise.
  15942. When hideshow minor mode is on, the menu bar is augmented with hideshow
  15943. commands and the hideshow commands are enabled.  The variables
  15944.  
  15945.     selective-display
  15946.     selective-display-ellipses
  15947.  
  15948. are set to t.  Lastly, the hooks set in hs-minor-mode-hook are called.
  15949. See documentation for `run-hooks'.
  15950.  
  15951. Turning hideshow minor mode off reverts the menu bar and the
  15952. variables to default values and disables the hideshow commands.
  15953. Fksh-mode
  15954. ksh-mode 2.6 - Major mode for editing (Bourne, Korn or Bourne again)
  15955. shell scripts.
  15956. Special key bindings and commands:
  15957. \{ksh-mode-map}
  15958. Variables controlling indentation style:
  15959. ksh-indent
  15960.     Indentation of ksh statements with respect to containing block.
  15961.     Default value is 2.
  15962. ksh-case-indent
  15963.     Additional indentation for statements under case items.
  15964.     Default value is nil which will align the statements one position 
  15965.     past the ")" of the pattern.
  15966. ksh-case-item-offset
  15967.     Additional indentation for case items within a case statement.
  15968.     Default value is 2.
  15969. ksh-group-offset
  15970.     Additional indentation for keywords "do" and "then".
  15971.     Default value is -2.
  15972. ksh-brace-offset
  15973.     Additional indentation of "{" under functions or brace groupings.
  15974.     Default value is 0.
  15975. ksh-multiline-offset
  15976.    Additional indentation of line that is preceded of a line ending with a
  15977.    \ to make it continue on next line.
  15978. ksh-tab-always-indent
  15979.     Controls the operation of the TAB key. If t (the default), always
  15980.     reindent the current line.  If nil, indent the current line only if
  15981.     point is at the left margin or in the line's indentation; otherwise
  15982.     insert a tab.
  15983. ksh-match-and-tell
  15984.     If non-nil echo in the minibuffer the matching compound command
  15985.     for the "done", "}", "fi", or "esac". Default value is t.
  15986.  
  15987. ksh-align-to-keyword
  15988.     Controls whether nested constructs align from the keyword or
  15989.     the current indentation. If non-nil, indentation will be relative to
  15990.     the column the keyword starts. If nil, indentation will be relative to
  15991.     the current indentation of the line the keyword is on.
  15992.     The default value is non-nil.
  15993.  
  15994. ksh-comment-regexp
  15995.   Regular expression used to recognize comments. Customize to support
  15996.   ksh-like languages. Default value is "\s *#".
  15997.  
  15998. Style Guide.
  15999.  By setting
  16000.     (setq ksh-indent default-tab-width)
  16001.     (setq ksh-group-offset 0)
  16002.  
  16003.     The following style is obtained:
  16004.  
  16005.     if [ -z $foo ]
  16006.         then
  16007.             bar    # <-- ksh-group-offset is additive to ksh-indent
  16008.             foo
  16009.     fi
  16010.  
  16011.  By setting
  16012.     (setq ksh-indent default-tab-width)
  16013.     (setq ksh-group-offset (- 0 ksh-indent))
  16014.  
  16015.     The following style is obtained:
  16016.  
  16017.     if [ -z $foo ]
  16018.     then
  16019.         bar
  16020.         foo
  16021.     fi
  16022.  
  16023.  By setting
  16024.     (setq ksh-case-item-offset 1)
  16025.     (setq ksh-case-indent nil)
  16026.  
  16027.     The following style is obtained:
  16028.  
  16029.     case x in *
  16030.      foo) bar           # <-- ksh-case-item-offset
  16031.           baz;;         # <-- ksh-case-indent aligns with ")"
  16032.      foobar) foo
  16033.              bar;;
  16034.     esac
  16035.  
  16036.  By setting
  16037.     (setq ksh-case-item-offset 1)
  16038.     (setq ksh-case-indent 6)
  16039.  
  16040.     The following style is obtained:
  16041.  
  16042.     case x in *
  16043.      foo) bar           # <-- ksh-case-item-offset
  16044.            baz;;        # <-- ksh-case-indent
  16045.      foobar) foo
  16046.            bar;;
  16047.     esac
  16048.     
  16049.  
  16050. Installation:
  16051.   Put ksh-mode.el in some directory in your load-path.
  16052.   Put the following forms in your .emacs file.
  16053.  
  16054.  (setq auto-mode-alist
  16055.       (append auto-mode-alist
  16056.               (list
  16057.                '("\\.sh$" . ksh-mode)
  16058.                '("\\.ksh$" . ksh-mode)
  16059.                '("\\.bashrc" . ksh-mode)
  16060.                '("\\..*profile" . ksh-mode))))
  16061.  
  16062.  (setq ksh-mode-hook
  16063.       (function (lambda ()
  16064.          (font-lock-mode 1)             ;; font-lock the buffer
  16065.          (setq ksh-indent 8)
  16066.      (setq ksh-group-offset -8))
  16067.      (setq ksh-brace-offset -8)   
  16068.          (setq ksh-tab-always-indent t)
  16069.          (setq ksh-match-and-tell t)
  16070.          (setq ksh-align-to-keyword t)    ;; Turn on keyword alignment
  16071.      )))
  16072. Frexx-mode
  16073. Major mode for editing REXX code.
  16074. \{rexx-mode-map}
  16075.  
  16076. Variables controlling indentation style:
  16077.  rexx-indent
  16078.     The basic indentation for do-blocks.
  16079.  rexx-end-indent
  16080.     The relative offset of the "end" statement. 0 places it in the
  16081.     same column as the statements of the block. Setting it to the same
  16082.     value as rexx-indent places the "end" under the do-line.
  16083.  rexx-cont-indent
  16084.     The indention for lines following "then", "else" and ","
  16085.     (continued) lines.
  16086.  rexx-tab-always-indent
  16087.     Non-nil means TAB in REXX mode should always reindent the current 
  16088.     line, regardless of where in the line the point is when the TAB
  16089.     command is used.
  16090.  
  16091. If you have set rexx-end-indent to a nonzero value, you probably want to
  16092. remap RETURN to rexx-indent-newline-indent. It makes sure that lines
  16093. indents correctly when you press RETURN.
  16094.  
  16095. An extensive abbrevation table consisting of all the keywords of REXX are
  16096. supplied. Expanded keywords are converted into upper case making it
  16097. easier to distinguish them. To use this feature the buffer must be in
  16098. abbrev-mode. (See example below.)
  16099.  
  16100. Turning on REXX mode calls the value of the variable rexx-mode-hook with
  16101. no args, if that value is non-nil.
  16102.  
  16103. For example:
  16104. (setq rexx-mode-hook '(lambda ()
  16105.             (setq rexx-indent 4)
  16106.             (setq rexx-end-indent 4)
  16107.             (setq rexx-cont-indent 4)
  16108.             (local-set-key "\C-m" 'rexx-indent-newline-indent)
  16109.             (abbrev-mode 1)
  16110.             ))
  16111.  
  16112. will make the END aligned with the DO/SELECT. It will indent blocks and
  16113. IF-statenents four steps and make sure that the END jumps into the
  16114. correct position when RETURN is pressed. Finaly it will use the abbrev
  16115. table to convert all REXX keywords into upper case.
  16116. Vmail-abbrev-mailrc-file
  16117. Name of file with mail aliases.   If nil, ~/.mailrc is used.
  16118. Vmail-aliases
  16119. Word-abbrev table of mail address aliases.
  16120. If this is nil, it means the aliases have not yet been initialized and
  16121. should be read from the .mailrc file.  (This is distinct from there being
  16122. no aliases, which is represented by this being a table with no entries.)
  16123. Fbuild-mail-aliases
  16124. Read mail aliases from .mailrc and set mail-aliases.
  16125. Fdefine-mail-alias
  16126. Define NAME as a mail-alias that translates to DEFINITION.
  16127. If DEFINITION contains multiple addresses, separate them with commas.
  16128. Fmakefile-mode
  16129. Major mode for editing Makefiles.
  16130. Calling this function invokes the function(s) "makefile-mode-hook" before
  16131. doing anything else.
  16132.  
  16133. \{makefile-mode-map}
  16134.  
  16135. In the browser, use the following keys:
  16136.  
  16137. \{makefile-browser-map}
  16138.  
  16139. makefile-mode can be configured by modifying the following
  16140. variables:
  16141.  
  16142. makefile-mode-name:
  16143.     The "pretty name" of makefile-mode, as it
  16144.     appears in the modeline.
  16145.  
  16146. makefile-browser-buffer-name:
  16147.     Name of the macro- and target browser buffer.
  16148.  
  16149. makefile-target-colon:
  16150.     The string that gets appended to all target names
  16151.     inserted by makefile-insert-target.
  16152.     ":" or "::" are quite common values.
  16153.  
  16154. makefile-macro-assign:
  16155.    The string that gets appended to all macro names
  16156.    inserted by makefile-insert-macro.
  16157.    The normal value should be " = ", since this is what
  16158.    standard make expects. However, newer makes such as dmake
  16159.    allow a larger variety of different macro assignments, so you
  16160.    might prefer to use " += " or " := " .
  16161.  
  16162. makefile-tab-after-target-colon:
  16163.    If you want a TAB (instead of a space) to be appended after the
  16164.    target colon, then set this to a non-nil value.
  16165.  
  16166. makefile-browser-leftmost-column:
  16167.    Number of blanks to the left of the browser selection mark.
  16168.  
  16169. makefile-browser-cursor-column:
  16170.    Column in which the cursor is positioned when it moves
  16171.    up or down in the browser.
  16172.  
  16173. makefile-browser-selected-mark:
  16174.    String used to mark selected entries in the browser.
  16175.  
  16176. makefile-browser-unselected-mark:
  16177.    String used to mark unselected entries in the browser.
  16178.  
  16179. makefile-browser-auto-advance-after-selection-p:
  16180.    If this variable is set to a non-nil value the cursor
  16181.    will automagically advance to the next line after an item
  16182.    has been selected in the browser.
  16183.  
  16184. makefile-pickup-everything-picks-up-filenames-p:
  16185.    If this variable is set to a non-nil value then
  16186.    makefile-pickup-everything also picks up filenames as targets
  16187.    (i.e. it calls makefile-find-filenames-as-targets), otherwise
  16188.    filenames are omitted.
  16189.  
  16190. makefile-cleanup-continuations-p:
  16191.    If this variable is set to a non-nil value then makefile-mode
  16192.    will assure that no line in the file ends with a backslash
  16193.    (the continuation character) followed by any whitespace.
  16194.    This is done by silently removing the trailing whitespace, leaving
  16195.    the backslash itself intact.
  16196.    IMPORTANT: Please note that enabling this option causes makefile-mode
  16197.    to MODIFY A FILE WITHOUT YOUR CONFIRMATION when 'it seems necessary'.
  16198.  
  16199. makefile-browser-hook:
  16200.    A function or list of functions to be called just before the
  16201.    browser is entered. This is executed in the makefile buffer.
  16202.  
  16203. makefile-special-targets-list:
  16204.    List of special targets. You will be offered to complete
  16205.    on one of those in the minibuffer whenever you enter a "."
  16206.    at the beginning of a line in makefile-mode.
  16207. Fmodula-2-mode
  16208. This is a mode intended to support program development in Modula-2.
  16209. All control constructs of Modula-2 can be reached by typing
  16210. Control-C followed by the first character of the construct.
  16211. \{m2-mode-map}
  16212.   Control-c b begin         Control-c c case
  16213.   Control-c d definition    Control-c e else
  16214.   Control-c f for           Control-c h header
  16215.   Control-c i if            Control-c m module
  16216.   Control-c l loop          Control-c o or
  16217.   Control-c p procedure     Control-c Control-w with
  16218.   Control-c r record        Control-c s stdio
  16219.   Control-c t type          Control-c u until
  16220.   Control-c v var           Control-c w while
  16221.   Control-c x export        Control-c y import
  16222.   Control-c { begin-comment Control-c } end-comment
  16223.   Control-c Control-z suspend-emacs     Control-c Control-t toggle
  16224.   Control-c Control-c compile           Control-x ` next-error
  16225.   Control-c Control-l link
  16226.  
  16227.    m2-indent controls the number of spaces for each indentation.
  16228.    m2-compile-command holds the command to compile a Modula-2 program.
  16229.    m2-link-command holds the command to link a Modula-2 program.
  16230. Fnroff-mode
  16231. Major mode for editing text intended for nroff to format.
  16232. \{nroff-mode-map}
  16233. Turning on Nroff mode runs `text-mode-hook', then `nroff-mode-hook'.
  16234. Also, try `nroff-electric-mode', for automatically inserting
  16235. closing requests for requests that are used in matched pairs.
  16236. Foutl-mouse-mode
  16237. Calls outline-mode, with outl-mouse extensions
  16238. Foutl-mouse-minor-mode
  16239. Toggles outline-minor-mode, with outl-mouse extensions
  16240. Foutline-mode
  16241. Set major mode for editing outlines with selective display.
  16242. Headings are lines which start with asterisks: one for major headings,
  16243. two for subheadings, etc.  Lines not starting with asterisks are body lines. 
  16244.  
  16245. Body text or subheadings under a heading can be made temporarily
  16246. invisible, or visible again.  Invisible lines are attached to the end 
  16247. of the heading, so they move with it, if the line is killed and yanked
  16248. back.  A heading with text hidden under it is marked with an ellipsis (...).
  16249.  
  16250. Commands:\<outline-mode-map>
  16251. \[outline-next-visible-heading]   outline-next-visible-heading      move by visible headings
  16252. \[outline-previous-visible-heading]   outline-previous-visible-heading
  16253. \[outline-forward-same-level]   outline-forward-same-level        similar but skip subheadings
  16254. \[outline-backward-same-level]   outline-backward-same-level
  16255. \[outline-up-heading]   outline-up-heading            move from subheading to heading
  16256.  
  16257. \[hide-body]    make all text invisible (not headings).
  16258. \[show-all]    make everything in buffer visible.
  16259.  
  16260. The remaining commands are used when point is on a heading line.
  16261. They apply to some of the body or subheadings of that heading.
  16262. \[hide-subtree]   hide-subtree    make body and subheadings invisible.
  16263. \[show-subtree]   show-subtree    make body and subheadings visible.
  16264. \[show-children]   show-children    make direct subheadings visible.
  16265.          No effect on body, or subheadings 2 or more levels down.
  16266.          With arg N, affects subheadings N levels down.
  16267. \[hide-entry]       make immediately following body invisible.
  16268. \[show-entry]       make it visible.
  16269. \[hide-leaves]       make body under heading and under its subheadings invisible.
  16270.              The subheadings remain visible.
  16271. \[show-branches]  make all subheadings at all levels visible.
  16272.  
  16273. The variable `outline-regexp' can be changed to control what is a heading.
  16274. A line is a heading if `outline-regexp' matches something at the
  16275. beginning of the line.  The longer the match, the deeper the level.
  16276.  
  16277. Turning on outline mode calls the value of `text-mode-hook' and then of
  16278. `outline-mode-hook', if they are non-nil.
  16279. Foutline-minor-mode
  16280. Toggle Outline minor mode.
  16281. With arg, turn Outline minor mode on if arg is positive, off otherwise.
  16282. See the command `outline-mode' for more information on this mode.
  16283. Fpascal-mode
  16284. Major mode for editing Pascal code. \<pascal-mode-map>
  16285. TAB indents for Pascal code.  Delete converts tabs to spaces as it moves back.
  16286.  
  16287. \[pascal-complete-word] completes the word around current point with respect to position in code
  16288. \[pascal-show-completions] shows all possible completions at this point.
  16289.  
  16290. Other useful functions are:
  16291.  
  16292. \[pascal-mark-defun]    - Mark function.
  16293. \[pascal-insert-block]    - insert begin ... end;
  16294. \[pascal-star-comment]    - insert (* ... *)
  16295. \[pascal-comment-area]    - Put marked area in a comment, fixing nested comments.
  16296. \[pascal-uncomment-area]    - Uncomment an area commented with \[pascal-comment-area].
  16297. \[pascal-beg-of-defun]    - Move to beginning of current function.
  16298. \[pascal-end-of-defun]    - Move to end of current function.
  16299. \[pascal-goto-defun]    - Goto function prompted for in the minibuffer.
  16300. \[pascal-outline]    - Enter pascal-outline-mode (see also pascal-outline).
  16301.  
  16302. Variables controlling indentation/edit style:
  16303.  
  16304.  pascal-indent-level      (default 3)
  16305.     Indentation of Pascal statements with respect to containing block.
  16306.  pascal-case-indent       (default 2)
  16307.     Indentation for case statements.
  16308.  pascal-auto-newline      (default nil)
  16309.     Non-nil means automatically newline after simcolons and the punctation mark
  16310.     after an end.
  16311.  pascal-tab-always-indent (default t)
  16312.     Non-nil means TAB in Pascal mode should always reindent the current line,
  16313.     regardless of where in the line point is when the TAB command is used.
  16314.  pascal-auto-endcomments  (default t)
  16315.     Non-nil means a comment { ... } is set after the ends which ends cases and
  16316.     functions. The name of the function or case will be set between the braces.
  16317.  pascal-auto-lineup       (default t)
  16318.     List of contexts where auto lineup of :'s or ='s hould be done.
  16319.  
  16320. See also the user variables pascal-type-keywords, pascal-start-keywords and
  16321. pascal-separator-keywords.
  16322.  
  16323. Turning on Pascal mode calls the value of the variable pascal-mode-hook with
  16324. no args, if that value is non-nil.
  16325. Fperl-mode
  16326. Major mode for editing Perl code.
  16327. Expression and list commands understand all Perl brackets.
  16328. Tab indents for Perl code.
  16329. Comments are delimited with # ... \n.
  16330. Paragraphs are separated by blank lines only.
  16331. Delete converts tabs to spaces as it moves back.
  16332. \{perl-mode-map}
  16333. Variables controlling indentation style:
  16334.  perl-tab-always-indent
  16335.     Non-nil means TAB in Perl mode should always indent the current line,
  16336.     regardless of where in the line point is when the TAB command is used.
  16337.  perl-tab-to-comment
  16338.     Non-nil means that for lines which don't need indenting, TAB will
  16339.     either delete an empty comment, indent an existing comment, move 
  16340.     to end-of-line, or if at end-of-line already, create a new comment.
  16341.  perl-nochange
  16342.     Lines starting with this regular expression will not be auto-indented.
  16343.  perl-indent-level
  16344.     Indentation of Perl statements within surrounding block.
  16345.     The surrounding block's indentation is the indentation
  16346.     of the line on which the open-brace appears.
  16347.  perl-continued-statement-offset
  16348.     Extra indentation given to a substatement, such as the
  16349.     then-clause of an if or body of a while.
  16350.  perl-continued-brace-offset
  16351.     Extra indentation given to a brace that starts a substatement.
  16352.     This is in addition to perl-continued-statement-offset.
  16353.  perl-brace-offset
  16354.     Extra indentation for line if it starts with an open brace.
  16355.  perl-brace-imaginary-offset
  16356.     An open brace following other text is treated as if it were
  16357.     this far to the right of the start of its line.
  16358.  perl-label-offset
  16359.     Extra indentation for line that is a label.
  16360.  
  16361. Various indentation styles:       K&R  BSD  BLK  GNU  LW
  16362.   perl-indent-level                5    8    0    2    4
  16363.   perl-continued-statement-offset  5    8    4    2    4
  16364.   perl-continued-brace-offset      0    0    0    0   -4
  16365.   perl-brace-offset               -5   -8    0    0    0
  16366.   perl-brace-imaginary-offset      0    0    4    0    0
  16367.   perl-label-offset               -5   -8   -2   -2   -2
  16368.  
  16369. Turning on Perl mode calls the value of the variable perl-mode-hook with no 
  16370. args, if that value is non-nil.
  16371. Fpicture-mode
  16372. Switch to Picture mode, in which a quarter-plane screen model is used.
  16373. Printing characters replace instead of inserting themselves with motion
  16374. afterwards settable by these commands:
  16375.   C-c <      Move left after insertion.
  16376.   C-c >      Move right after insertion.
  16377.   C-c ^      Move up after insertion.
  16378.   C-c .      Move down after insertion.
  16379.   C-c `      Move northwest (nw) after insertion.
  16380.   C-c '      Move northeast (ne) after insertion.
  16381.   C-c /      Move southwest (sw) after insertion.
  16382.   C-c \   Move southeast (se) after insertion.
  16383. The current direction is displayed in the modeline.  The initial
  16384. direction is right.  Whitespace is inserted and tabs are changed to
  16385. spaces when required by movement.  You can move around in the buffer
  16386. with these commands:
  16387.   \[picture-move-down]      Move vertically to SAME column in previous line.
  16388.   \[picture-move-up]      Move vertically to SAME column in next line.
  16389.   \[picture-end-of-line]      Move to column following last non-whitespace character.
  16390.   \[picture-forward-column]      Move right inserting spaces if required.
  16391.   \[picture-backward-column]      Move left changing tabs to spaces if required.
  16392.   C-c C-f Move in direction of current picture motion.
  16393.   C-c C-b Move in opposite direction of current picture motion.
  16394.   Return  Move to beginning of next line.
  16395. You can edit tabular text with these commands:
  16396.   M-Tab      Move to column beneath (or at) next interesting character.
  16397.         `Indents' relative to a previous line.
  16398.   Tab      Move to next stop in tab stop list.
  16399.   C-c Tab Set tab stops according to context of this line.
  16400.         With ARG resets tab stops to default (global) value.
  16401.         See also documentation of variable    picture-tab-chars
  16402.         which defines "interesting character".  You can manually
  16403.         change the tab stop list with command \[edit-tab-stops].
  16404. You can manipulate text with these commands:
  16405.   C-d      Clear (replace) ARG columns after point without moving.
  16406.   C-c C-d Delete char at point - the command normally assigned to C-d.
  16407.   \[picture-backward-clear-column]  Clear (replace) ARG columns before point, moving back over them.
  16408.   \[picture-clear-line]      Clear ARG lines, advancing over them.     The cleared
  16409.         text is saved in the kill ring.
  16410.   \[picture-open-line]      Open blank line(s) beneath current line.
  16411. You can manipulate rectangles with these commands:
  16412.   C-c C-k Clear (or kill) a rectangle and save it.
  16413.   C-c C-w Like C-c C-k except rectangle is saved in named register.
  16414.   C-c C-y Overlay (or insert) currently saved rectangle at point.
  16415.   C-c C-x Like C-c C-y except rectangle is taken from named register.
  16416.   \[copy-rectangle-to-register]   Copies a rectangle to a register.
  16417.   \[advertised-undo]   Can undo effects of rectangle overlay commands
  16418.         commands if invoked soon enough.
  16419. You can return to the previous mode with:
  16420.   C-c C-c Which also strips trailing whitespace from every line.
  16421.         Stripping is suppressed by supplying an argument.
  16422.  
  16423. Entry to this mode calls the value of  picture-mode-hook  if non-nil.
  16424.  
  16425. Note that Picture mode commands will work outside of Picture mode, but
  16426. they are not defaultly assigned to keys.
  16427. Fpostscript-mode
  16428. Major mode for editing PostScript files.
  16429.  
  16430. \[ps-execute-buffer] will send the contents of the buffer to the NeWS
  16431. server using psh(1).  \[ps-execute-region] sends the current region.
  16432. \[ps-shell] starts an interactive psh(1) window which will be used for
  16433. subsequent \[ps-execute-buffer] or \[ps-execute-region] commands.
  16434.  
  16435. In this mode, TAB and \[indent-region] attempt to indent code
  16436. based on the position of {}, [], and begin/end pairs.  The variable
  16437. ps-indent-level controls the amount of indentation used inside
  16438. arrays and begin/end pairs.  
  16439.  
  16440. \{ps-mode-map}
  16441.  
  16442. \[postscript-mode] calls the value of the variable postscript-mode-hook 
  16443. with no args, if that value is non-nil.
  16444. Fprolog-mode
  16445. Major mode for editing Prolog code for Prologs.
  16446. Blank lines and `%%...' separate paragraphs.  `%'s start comments.
  16447. Commands:
  16448. \{prolog-mode-map}
  16449. Entry to this mode calls the value of prolog-mode-hook
  16450. if that value is non-nil.
  16451. Finferior-prolog-mode
  16452. Major mode for interacting with an inferior Prolog process.
  16453.  
  16454. The following commands are available:
  16455. \{inferior-prolog-mode-map}
  16456.  
  16457. Entry to this mode calls the value of prolog-mode-hook with no arguments,
  16458. if that value is non-nil.  Likewise with the value of comint-mode-hook.
  16459. prolog-mode-hook is called after comint-mode-hook.
  16460.  
  16461. You can send text to the inferior Prolog from other buffers
  16462. using the commands send-region, send-string and \[prolog-consult-region].
  16463.  
  16464. Commands:
  16465. Tab indents for Prolog; with argument, shifts rest
  16466.  of expression rigidly with the current line.
  16467. Paragraphs are separated only by blank lines and '%%'. '%'s start comments.
  16468.  
  16469. Return at end of buffer sends line as input.
  16470. Return not at end copies rest of line to end and sends it.
  16471. \[comint-kill-input] and \[backward-kill-word] are kill commands, imitating normal Unix input editing.
  16472. \[comint-interrupt-subjob] interrupts the shell or its current subjob if any.
  16473. \[comint-stop-subjob] stops. \[comint-quit-subjob] sends quit signal.
  16474. Frun-prolog
  16475. Run an inferior Prolog process, input and output via buffer *prolog*.
  16476. Vresize-minibuffer-mode
  16477. *If non-`nil', resize the minibuffer so its entire contents are visible.
  16478. Vresize-minibuffer-window-max-height
  16479. *Maximum size the minibuffer window is allowed to become.
  16480. If less than 1 or not a number, the limit is the height of the frame in
  16481. which the active minibuffer window resides.
  16482. Vresize-minibuffer-window-exactly
  16483. *If non-`nil', make minibuffer exactly the size needed to display all its contents.
  16484. Otherwise, the minibuffer window can temporarily increase in size but
  16485. never get smaller while it is active.
  16486. Vresize-minibuffer-frame
  16487. *If non-`nil' and the active minibuffer is the sole window in its frame, allow changing the frame height.
  16488. Vresize-minibuffer-frame-max-height
  16489. *Maximum size the minibuffer frame is allowed to become.
  16490. If less than 1 or not a number, there is no limit.
  16491. Vresize-minibuffer-frame-exactly
  16492. *If non-`nil', make minibuffer frame exactly the size needed to display all its contents.
  16493. Otherwise, the minibuffer frame can temporarily increase in size but
  16494. never get smaller while it is active.
  16495. Fresize-minibuffer-mode
  16496. Enable or disable resize-minibuffer mode.
  16497. A negative prefix argument disables this mode.  A positive argument or
  16498. argument of 0 enables it.
  16499.  
  16500. When this minor mode is enabled, the minibuffer is dynamically resized to
  16501. contain the entire region of text put in it as you type.
  16502.  
  16503. The variable `resize-minibuffer-mode' is set to t or nil depending on
  16504. whether this mode is active or not.
  16505.  
  16506. The maximum height to which the minibuffer can grow is controlled by the
  16507. variable `resize-minibuffer-window-max-height'.
  16508.  
  16509. The variable `resize-minibuffer-window-exactly' determines whether the
  16510. minibuffer window should ever be shrunk to make it no larger than needed to
  16511. display its contents.
  16512.  
  16513. When using a window system, it is possible for a minibuffer to tbe the sole
  16514. window in a frame.  Since that window is already its maximum size, the only
  16515. way to make more text visible at once is to increase the size of the frame.
  16516. The variable `resize-minibuffer-frame' controls whether this should be
  16517. done.  The variables `resize-minibuffer-frame-max-height' and
  16518. `resize-minibuffer-frame-exactly' are analogous to their window
  16519. counterparts.
  16520. Fscheme-mode
  16521. Major mode for editing Scheme code.
  16522. Editing commands are similar to those of lisp-mode.
  16523.  
  16524. In addition, if an inferior Scheme process is running, some additional
  16525. commands will be defined, for evaluating expressions and controlling
  16526. the interpreter, and the state of the process will be displayed in the
  16527. modeline of all Scheme buffers.  The names of commands that interact
  16528. with the Scheme process start with "xscheme-".  For more information
  16529. see the documentation for xscheme-interaction-mode.
  16530.  
  16531. Commands:
  16532. Delete converts tabs to spaces as it moves back.
  16533. Blank lines separate paragraphs.  Semicolons start comments.
  16534. \{scheme-mode-map}
  16535. Entry to this mode calls the value of scheme-mode-hook
  16536. if that value is non-nil.
  16537. Fscribe-mode
  16538. Major mode for editing files of Scribe (a text formatter) source.
  16539. Scribe-mode is similar text-mode, with a few extra commands added.
  16540. \{scribe-mode-map}
  16541.  
  16542. Interesting variables:
  16543.  
  16544. scribe-fancy-paragraphs
  16545.   Non-nil makes Scribe mode use a different style of paragraph separation.
  16546.  
  16547. scribe-electric-quote
  16548.   Non-nil makes insert of double quote use `` or '' depending on context.
  16549.  
  16550. scribe-electric-parenthesis
  16551.   Non-nil makes an open-parenthesis char (one of `([<{')
  16552.   automatically insert its close if typed after an @Command form.
  16553. Vmail-self-blind
  16554. Non-nil means insert BCC to self in messages to be sent.
  16555. This is done when the message is initialized,
  16556. so you can remove or alter the BCC field to override the default.
  16557. Vmail-interactive
  16558. Non-nil means when sending a message wait for and display errors.
  16559. nil means let mailer mail back a message to report errors.
  16560. Vmail-dir
  16561. *Default directory for saving messages.
  16562. Vrmail-ignored-headers
  16563. *Gubbish header fields one would rather not see.
  16564. Vmail-yank-ignored-headers
  16565. Delete these headers from old message when it's inserted in a reply.
  16566. Vsend-mail-function
  16567. Function to call to send the current buffer as mail.
  16568. The headers are be delimited by a line which is `mail-header-separator'.
  16569. Vmail-header-separator
  16570. *Line used to separate headers from text in messages being composed.
  16571. Vmail-archive-file-name
  16572. *Name of file to write all outgoing messages in, or nil for none.
  16573. Do not use an rmail file here!  Instead, use its inbox file.
  16574. Vmail-yank-prefix
  16575. *Prefix insert on lines of yanked message being replied to.
  16576. nil means use indentation.
  16577. Vmail-signature
  16578. *Text inserted at end of mail buffer when a message is initialized.
  16579. If t, it means to insert the contents of the file `mail-signature-file'.
  16580. Fmail-mode
  16581. Major mode for editing mail to be sent.
  16582. Like Text Mode but with these additional commands:
  16583. C-c C-s  mail-send (send the message)    C-c C-c  mail-send-and-exit
  16584. C-c C-f  move to a header field (and create it if there isn't):
  16585.      C-c C-f C-t  move to To:    C-c C-f C-s  move to Subj:
  16586.      C-c C-f C-b  move to BCC:    C-c C-f C-c  move to CC:
  16587.      C-c C-f C-r  move to Reply-To:
  16588. C-c C-t  move to message text.
  16589. C-c C-y  mail-yank-original (insert current message, in Rmail).
  16590. C-c C-w  mail-signature (insert signature file).
  16591. C-c C-q  mail-fill-yanked-message (fill what was yanked).
  16592. C-c C-v  mail-sent-via (add a sent-via field for each To or CC)
  16593.  
  16594. Button3  Popup menu with the above commands.
  16595. Fmail
  16596. Edit a message to be sent.  Prefix arg means resume editing (don't erase).
  16597. When this function returns, the buffer `*mail*' is selected.
  16598. The value is t if the message was newly initialized; otherwise, nil.
  16599.  
  16600. \<mail-mode-map>
  16601. While editing message, type \[mail-send-and-exit] to send the message and exit.
  16602.  
  16603. Various special commands starting with C-c are available in sendmail mode
  16604. to move to message header fields:
  16605. \{mail-mode-map}
  16606.  
  16607. The variable `mail-signature' controls whether the signature file
  16608. `mail-signature-file' is inserted immediately.
  16609.  
  16610. If `mail-insert-signature' is non-nil, the signature file, denoted by
  16611. the variable `mail-signature-file', is automatically inserted at the
  16612. end of the message before sending.  (Otherwise use C-c C-w).
  16613.  
  16614. If `mail-self-blind' is non-nil, a BCC to yourself is inserted
  16615. when the message is initialized.
  16616.  
  16617. If `mail-default-reply-to' is non-nil, it should be an address (a string);
  16618. a Reply-to: field with that address is inserted.
  16619.  
  16620. If `mail-archive-file-name' is non-nil, an FCC field with that file name
  16621. is inserted.
  16622.  
  16623. If `mail-setup-hook' is bound, its value is called with no arguments
  16624. after the message is initialized.  It can add more default fields.
  16625.  
  16626. When calling from a program, the second through fifth arguments
  16627.  TO, SUBJECT, IN-REPLY-TO and CC specify if non-nil
  16628.  the initial contents of those header fields.
  16629.  These arguments should not have final newlines.
  16630. The sixth argument REPLYBUFFER is a buffer whose contents
  16631.  should be yanked if the user types C-c C-y.
  16632. The seventh argument ACTIONS is a list of actions to take
  16633.  if/when the message is sent.  Each action looks like (FUNCTION . ARGS);
  16634.  when the message is sent, we apply FUNCTION to ARGS.
  16635.  This is how Rmail arranges to mark messages `answered'.
  16636. Fmail-other-window
  16637. Like `mail' command, but display mail buffer in another window.
  16638. Fmail-other-frame
  16639. Like `mail' command, but display mail buffer in another frame.
  16640. Fsgml-mode
  16641. Major mode for editing SGML.
  16642. Makes > display the matching <.  Makes / display matching /.
  16643. Use \[sgml-validate] to validate your document with an SGML parser.
  16644. Ftcl-mode
  16645. Major mode for editing Tcl code.
  16646. Expression and list commands understand all Tcl brackets.
  16647. Tab indents for Tcl code.
  16648. Paragraphs are separated by blank lines only.
  16649. Delete converts tabs to spaces as it moves back.
  16650.  
  16651. Variables controlling indentation style:
  16652.   tcl-indent-level
  16653.     Indentation of Tcl statements within surrounding block.
  16654.   tcl-continued-indent-level
  16655.     Indentation of continuation line relative to first line of command.
  16656.  
  16657. Variables controlling user interaction with mode (see variable
  16658. documentation for details):
  16659.   tcl-tab-always-indent
  16660.     Controls action of TAB key.
  16661.   tcl-auto-newline
  16662.     Non-nil means automatically newline before and after braces, brackets,
  16663.     and semicolons inserted in Tcl code.
  16664.   tcl-electric-hash-style
  16665.     Controls action of `#' key.
  16666.   tcl-use-hairy-comment-detector
  16667.     If t, use more complicated, but slower, comment detector.
  16668.     This variable is only used in GNU Emacs 19.
  16669.  
  16670. Turning on Tcl mode calls the value of the variable `tcl-mode-hook'
  16671. with no args, if that value is non-nil.  Read the documentation for
  16672. `tcl-mode-hook' to see what kinds of interesting hook functions
  16673. already exist.
  16674.  
  16675. Commands:
  16676. \{tcl-mode-map}
  16677. Finferior-tcl
  16678. Run inferior Tcl process.
  16679. Prefix arg means enter program name interactively.
  16680. See documentation for function `inferior-tcl-mode' for more information.
  16681. Ftcl-help-on-word
  16682. Get help on Tcl command.  Default is word at point.
  16683. Prefix argument means invert sense of `tcl-use-smart-word-finder'.
  16684. Ftex-mode
  16685. Major mode for editing files of input for TeX, LaTeX, or SliTeX.
  16686. Tries to determine (by looking at the beginning of the file) whether
  16687. this file is for plain TeX, LaTeX, or SliTeX and calls plain-tex-mode,
  16688. latex-mode, or slitex-mode, respectively.  If it cannot be determined,
  16689. such as if there are no commands in the file, the value of tex-default-mode
  16690. is used.
  16691. Fplain-tex-mode
  16692. Major mode for editing files of input for plain TeX.
  16693. Makes $ and } display the characters they match.
  16694. Makes " insert `` when it seems to be the beginning of a quotation,
  16695. and '' when it appears to be the end; it inserts " only after a \.
  16696.  
  16697. Use \[tex-region] to run TeX on the current region, plus a "header"
  16698. copied from the top of the file (containing macro definitions, etc.),
  16699. running TeX under a special subshell.  \[tex-buffer] does the whole buffer.
  16700. \[tex-file] saves the buffer and then processes the file.
  16701. \[tex-print] prints the .dvi file made by any of these.
  16702. \[tex-view] previews the .dvi file made by any of these.
  16703. \[tex-bibtex-file] runs bibtex on the file of the current buffer.
  16704.  
  16705. Use \[validate-tex-buffer] to check buffer for paragraphs containing
  16706. mismatched $'s or braces.
  16707.  
  16708. Special commands:
  16709. \{tex-mode-map}
  16710.  
  16711. Mode variables:
  16712. tex-run-command
  16713.     Command string used by \[tex-region] or \[tex-buffer].
  16714. tex-directory
  16715.     Directory in which to create temporary files for TeX jobs
  16716.     run by \[tex-region] or \[tex-buffer].
  16717. tex-dvi-print-command
  16718.     Command string used by \[tex-print] to print a .dvi file.
  16719. tex-alt-dvi-print-command
  16720.     Alternative command string used by \[tex-print] (when given a prefix
  16721.     argument) to print a .dvi file.
  16722. tex-dvi-view-command
  16723.     Command string used by \[tex-view] to preview a .dvi file.
  16724. tex-show-queue-command
  16725.     Command string used by \[tex-show-print-queue] to show the print
  16726.     queue that \[tex-print] put your job on.
  16727.  
  16728. Entering Plain-tex mode calls the value of text-mode-hook, then the value of
  16729. tex-mode-hook, and then the value of plain-tex-mode-hook.  When the special
  16730. subshell is initiated, the value of tex-shell-hook is called.
  16731. Flatex-mode
  16732. Major mode for editing files of input for LaTeX.
  16733. Makes $ and } display the characters they match.
  16734. Makes " insert `` when it seems to be the beginning of a quotation,
  16735. and '' when it appears to be the end; it inserts " only after a \.
  16736.  
  16737. Use \[tex-region] to run LaTeX on the current region, plus the preamble
  16738. copied from the top of the file (containing \documentstyle, etc.),
  16739. running LaTeX under a special subshell.  \[tex-buffer] does the whole buffer.
  16740. \[tex-file] saves the buffer and then processes the file.
  16741. \[tex-print] prints the .dvi file made by any of these.
  16742. \[tex-view] previews the .dvi file made by any of these.
  16743. \[tex-bibtex-file] runs bibtex on the file of the current buffer.
  16744.  
  16745. Use \[validate-tex-buffer] to check buffer for paragraphs containing
  16746. mismatched $'s or braces.
  16747.  
  16748. Special commands:
  16749. \{tex-mode-map}
  16750.  
  16751. Mode variables:
  16752. latex-run-command
  16753.     Command string used by \[tex-region] or \[tex-buffer].
  16754. tex-directory
  16755.     Directory in which to create temporary files for LaTeX jobs
  16756.     run by \[tex-region] or \[tex-buffer].
  16757. tex-dvi-print-command
  16758.     Command string used by \[tex-print] to print a .dvi file.
  16759. tex-alt-dvi-print-command
  16760.     Alternative command string used by \[tex-print] (when given a prefix
  16761.     argument) to print a .dvi file.
  16762. tex-dvi-view-command
  16763.     Command string used by \[tex-view] to preview a .dvi file.
  16764. tex-show-queue-command
  16765.     Command string used by \[tex-show-print-queue] to show the print
  16766.     queue that \[tex-print] put your job on.
  16767.  
  16768. Entering Latex mode calls the value of text-mode-hook, then the value of
  16769. tex-mode-hook, and then the value of latex-mode-hook.  When the special
  16770. subshell is initiated, the value of tex-shell-hook is called.
  16771. Ftexinfo-mode
  16772. Major mode for editing Texinfo files.
  16773.  
  16774.   It has these extra commands:
  16775. \{texinfo-mode-map}
  16776.  
  16777.   These are files that are used as input for TeX to make printed manuals
  16778. and also to be turned into Info files with \[makeinfo-buffer] or
  16779. the `makeinfo' program.  These files must be written in a very restricted and
  16780. modified version of TeX input format.
  16781.  
  16782.   Editing commands are like text-mode except that the syntax table is
  16783. set up so expression commands skip Texinfo bracket groups.  To see
  16784. what the Info version of a region of the Texinfo file will look like,
  16785. use \[makeinfo-region], which runs `makeinfo' on the current region.
  16786.  
  16787.   You can show the structure of a Texinfo file with \[texinfo-show-structure].
  16788. This command shows the structure of a Texinfo file by listing the
  16789. lines with the @-sign commands for @chapter, @section, and the like.
  16790. These lines are displayed in another window called the *Occur* window.
  16791. In that window, you can position the cursor over one of the lines and
  16792. use \[occur-mode-goto-occurrence], to jump to the corresponding spot
  16793. in the Texinfo file.
  16794.  
  16795.   In addition, Texinfo mode provides commands that insert various
  16796. frequently used @-sign commands into the buffer.  You can use these
  16797. commands to save keystrokes.  And you can insert balanced braces with
  16798. \[texinfo-insert-braces] and later use the command \[up-list] to
  16799. move forward past the closing brace.
  16800.  
  16801. Also, Texinfo mode provides functions for automatically creating or
  16802. updating menus and node pointers.  These functions
  16803.  
  16804.   * insert the `Next', `Previous' and `Up' pointers of a node,
  16805.   * insert or update the menu for a section, and
  16806.   * create a master menu for a Texinfo source file.
  16807.  
  16808. Here are the functions:
  16809.  
  16810.     texinfo-update-node                \[texinfo-update-node]
  16811.     texinfo-every-node-update          \[texinfo-every-node-update]
  16812.     texinfo-sequential-node-update 
  16813.  
  16814.     texinfo-make-menu                  \[texinfo-make-menu]
  16815.     texinfo-all-menus-update           \[texinfo-all-menus-update]
  16816.     texinfo-master-menu
  16817.  
  16818.     texinfo-indent-menu-description (column &optional region-p)
  16819.  
  16820. The `texinfo-column-for-description' variable specifies the column to
  16821. which menu descriptions are indented. 
  16822.  
  16823. Passed an argument (a prefix argument, if interactive), the
  16824. `texinfo-update-node' and `texinfo-make-menu' functions do their jobs
  16825. in the region.
  16826.  
  16827. To use the updating commands, you must structure your Texinfo file
  16828. hierarchically, such that each `@node' line, with the exception of the
  16829. Top node, is accompanied by some kind of section line, such as an
  16830. `@chapter' or `@section' line.
  16831.  
  16832. If the file has a `top' node, it must be called `top' or `Top' and
  16833. be the first node in the file.
  16834.  
  16835. Entering Texinfo mode calls the value of text-mode-hook, and then the
  16836. value of texinfo-mode-hook.
  16837. Vtc-mode-map
  16838. Keymap for commands for two-column mode.
  16839. Ftc-two-columns
  16840. Split current window vertically for two-column editing.
  16841.  
  16842. When called the first time, associates a buffer with the current
  16843. buffer.  Both buffers are put in two-column minor mode and
  16844. tc-mode-hook gets called on both.  These buffers remember
  16845. about one another, even when renamed.
  16846.  
  16847. When called again, restores the screen layout with the current buffer
  16848. first and the associated buffer to it's right.
  16849.  
  16850. If you include long lines, i.e which will span both columns (eg.
  16851. source code), they should be in what will be the first column, with
  16852. the associated buffer having empty lines next to them.
  16853.  
  16854. You have the following commands at your disposal:
  16855.  
  16856. \[tc-two-columns]   Rearrange screen
  16857. \[tc-associate-buffer]   Reassociate buffer after changing major mode
  16858. \[tc-scroll-up]   Scroll both buffers up by a screenfull
  16859. \[tc-scroll-down]   Scroll both buffers down by a screenful
  16860. \[tc-scroll-line]   Scroll both buffers up by one or more lines
  16861. \[tc-recenter]   Recenter and realign other buffer
  16862. \[shrink-window-horizontally], \[enlarge-window-horizontally]   Shrink, enlarge current column
  16863. \[tc-associated-buffer]   Switch to associated buffer
  16864. \[tc-merge]   Merge both buffers
  16865.  
  16866. These keybindings can be customized in your ~/.emacs by `tc-prefix'
  16867. and `tc-mode-map'.
  16868.  
  16869. The appearance of the screen can be customized by the variables
  16870. `tc-window-width', `tc-beyond-fill-column',
  16871. `tc-mode-line-format' and `truncate-partial-width-windows'.
  16872. Ftc-associate-buffer
  16873. Associate another buffer with this one in two-column minor mode.
  16874. Can also be used to associate a just previously visited file, by
  16875. accepting the proposed default buffer.
  16876.  
  16877. See  \[tc-two-columns]  and  `lisp/two-column.el'  for further details.
  16878. Ftc-split
  16879. Unmerge a two-column text into two buffers in two-column minor mode.
  16880. The text is unmerged at the cursor's column which becomes the local
  16881. value of `tc-window-width'.  Only lines that have the ARG same
  16882. preceding characters at that column get split.  The ARG preceding
  16883. characters without any leading whitespace become the local value for
  16884. `tc-separator'.  This way lines that continue across both
  16885. columns remain untouched in the first buffer.
  16886.  
  16887. This function can be used with a prototype line, to set up things as
  16888. you like them.  You write the first line of each column with the
  16889. separator you like and then unmerge that line.  E.g.:
  16890.  
  16891. First column's text    sSs  Second columns text
  16892.                \___/\
  16893.             /    \
  16894.    5 character Separator      You type  M-5 \[tc-split]  with the point here
  16895.  
  16896. See  \[tc-two-columns]  and  `lisp/two-column.el'  for further details.
  16897. Ftc-dissociate
  16898. Turn off two-column minor mode in current and associated buffer.
  16899. If the associated buffer is unmodified and empty, it is killed.
  16900. Ftc-merge
  16901. Merges the associated buffer with the current buffer.
  16902. They get merged at the column, which is the value of
  16903. `tc-window-width', i.e. usually at the vertical window
  16904. separator.  This separator gets replaced with white space.  Beyond
  16905. that the value of gets inserted on merged lines.  The two columns are
  16906. thus pasted side by side, in a single text.  If the other buffer is
  16907. not displayed to the left of this one, then this one becomes the left
  16908. column.
  16909.  
  16910. If you want `tc-separator' on empty lines in the second column,
  16911. you should put just one space in them.  In the final result, you can strip
  16912. off trailing spaces with \[beginning-of-buffer] \[replace-regexp] [ SPC TAB ] + $ RET RET
  16913. Ftc-associated-buffer
  16914. Switch to associated buffer.
  16915. Ftc-scroll-line
  16916. Scroll current window upward by ARG lines.
  16917. The associated window gets scrolled to the same line.
  16918. Ftc-scroll-up
  16919. Scroll current window upward by ARG screens.
  16920. The associated window gets scrolled to the same line.
  16921. Ftc-scroll-down
  16922. Scroll current window downward by ARG screens.
  16923. The associated window gets scrolled to the same line.
  16924. Ftc-recenter
  16925. Center point in window.  With ARG, put point on line ARG.
  16926. This counts from bottom if ARG is negative.  The associated window
  16927. gets scrolled to the same line.
  16928. Fview-file
  16929. Find FILE, enter view mode.  With prefix arg OTHER-P, use other window.
  16930. Fview-buffer
  16931. Switch to BUF, enter view mode.  With prefix arg use other window.
  16932. Fview-file-other-window
  16933. Find FILE in other window, and enter view mode.
  16934. Fview-buffer-other-window
  16935. Switch to BUFFER in another window, and enter view mode.
  16936. Fview-minor-mode
  16937. Minor mode for viewing text, with bindings like `less'.
  16938. Commands are:
  16939. \<view-minor-mode-map>
  16940. 0..9    prefix args
  16941. -    prefix minus
  16942. \[scroll-up]    page forward
  16943. \[scroll-down]    page back
  16944. \[view-scroll-lines-up]    scroll prefix-arg lines forward, default 1.
  16945. \[view-scroll-lines-down]    scroll prefix-arg lines backward, default 1.
  16946. \[view-scroll-some-lines-down]    scroll prefix-arg lines backward, default 10.
  16947. \[view-scroll-some-lines-up]    scroll prefix-arg lines forward, default 10.
  16948. \[what-line]    print line number
  16949. \[view-mode-describe]    print this help message
  16950. \[view-search-forward]    regexp search, uses previous string if you just hit RET
  16951. \[view-search-backward]    as above but searches backward
  16952. \[view-repeat-search]    repeat last search
  16953. \[view-goto-line]    goto line prefix-arg, default 1
  16954. \[view-last-windowful]    goto line prefix-arg, default last line
  16955. \[view-goto-percent]    goto a position by percentage
  16956. \[toggle-truncate-lines]    toggle truncate-lines
  16957. \[view-file]    view another file
  16958. \[view-buffer]    view another buffer
  16959. \[view-cleanup-backspaces]    cleanup backspace constructions
  16960. \[shell-command]    execute a shell command
  16961. \[shell-command-on-region]    execute a shell command with the region as input
  16962. \[view-quit]    exit view-mode, and bury the current buffer.
  16963.  
  16964. If invoked with the optional (prefix) arg non-nil, view-mode cleans up
  16965. backspace constructions.
  16966.  
  16967. More precisely:
  16968. \{view-minor-mode-map}
  16969. Fview-mode
  16970. View the current buffer using view-minor-mode.  This exists to be 99.9%
  16971. compatible with the implementations of `view-mode' in view.el and older
  16972. versions of view-less.el.
  16973. Fxpm-mode
  16974. Treat the current buffer as an xpm file and colorize it.
  16975.  
  16976.   Shift-button-1 lets you paint by dragging the mouse.  Shift-button-1 on a
  16977. color definition line will change the current painting color to that line's
  16978. value.
  16979.  
  16980.   Characters inserted from the keyboard will NOT be colored properly yet.
  16981. Use the mouse, or do xpm-init (\[xpm-init]) after making changes.
  16982.  
  16983. \[xpm-add-color] Add a new color, prompting for character and value
  16984. \[xpm-show-image] show the current image at the top of the buffer
  16985. \[xpm-parse-color] parse the current line's color definition and add
  16986.    it to the color table.  Provided as a means of changing colors.
  16987. XPM minor mode bindings:
  16988. \{xpm-mode-map}
  16989. Fbr-env-browse
  16990. Invoke the OO-Browser on ENV-FILE.
  16991. Fbr-env-load
  16992. Load browser Environment or spec from optional ENV-FILE or 'br-env-file'.
  16993. Non-nil PROMPT means prompt user before building tables.
  16994. Non-nil NO-BUILD means skip build of Environment entirely.
  16995. Return t if load is successful, else nil.
  16996. Foobr
  16997. Prompt for a language over which to run the OO-Browser.
  16998. Optional prefix argument OPEN-ENV-FLAG prompts for an OO-Browser environment
  16999. to open or for a new environment to be specified.
  17000. Fbr-add-class-file
  17001. Add a file of classes to the current Environment.
  17002. Interactively or when optional CLASS-PATH is nil, CLASS-PATH defaults to the
  17003. current buffer file pathname.  If optional LIB-TABLE-P is non-nil, add to
  17004. Library Environment, otherwise add to System Environment.  If optional
  17005. SAVE-FILE is t, the Environment is then stored to the filename given by
  17006. 'br-env-file'.  If SAVE-FILE is non-nil and not t, its string value is used
  17007. as the file to which to save the Environment.
  17008. Fbr-to-from-viewer
  17009. Move point to viewer window or back to last recorded listing window.
  17010. Fc++-browse
  17011. Invoke the C++ OO-Browser.
  17012. This allows browsing through C++ library and system class hierarchies.  With
  17013. an optional non-nil prefix argument ENV-FILE, prompt for Environment file to
  17014. use.  Alternatively, a string value of ENV-FILE is used as the Environment
  17015. file name.  See also the file "br-help".
  17016. Fclos-browse
  17017. Invoke the CLOS OO-Browser.
  17018. This allows browsing through CLOS library and system class hierarchies.  With
  17019. an optional non-nil prefix argument ENV-FILE, prompt for Environment file
  17020. to use.  Alternatively, a string value of ENV-FILE is used as the
  17021. Environment file name.  See also the file "br-help".
  17022. Feif-browse
  17023. Invoke the Eiffel OO-Browser.
  17024. This allows browsing through Eiffel library and system class hierarchies.
  17025. With an optional prefix arg ENV-FILE equal to t, prompt for Environment file
  17026. to use.  Alternatively, a string value of ENV-FILE is used as the Environment
  17027. file name.  See also the file "br-help".
  17028. Finfo-browse
  17029. Invoke the Info OO-Browser.
  17030. This allows browsing through Info library and system class hierarchies.  With
  17031. an optional non-nil prefix argument ENV-FILE, prompt for Environment file to
  17032. use.  Alternatively, a string value of ENV-FILE is used as the Environment
  17033. file name.  See also the file "br-help".
  17034. Fjava-browse
  17035. Invoke the Java OO-Browser.
  17036. This allows browsing through Java library and system class hierarchies.  With
  17037. an optional non-nil prefix argument ENV-FILE, prompt for Environment file to
  17038. use.  Alternatively, a string value of ENV-FILE is used as the Environment
  17039. file name.  See also the file "br-help".
  17040. Fobjc-browse
  17041. Invoke the Objective-C OO-Browser.
  17042. This allows browsing through Objective-C library and system class
  17043. hierarchies.  With an optional non-nil prefix argument ENV-FILE, prompt for
  17044. Environment file to use.  Alternatively, a string value of ENV-FILE is used
  17045. as the Environment file name.  See also the file "br-help".
  17046. Fsmt-browse
  17047. Invoke the Smalltalk OO-Browser.
  17048. This allows browsing through Smalltalk library and system class hierarchies.
  17049. With an optional non-nil prefix argument ENV-FILE, prompt for Environment
  17050. file to use.  Alternatively, a string value of ENV-FILE is used as the
  17051. Environment file name.  See also the file "br-help".
  17052. Vchange-log-default-name
  17053. *Name of a change log file for \[add-change-log-entry].
  17054. Vadd-log-current-defun-function
  17055. *If non-nil, function to guess name of current function from surrounding text.
  17056. \[add-change-log-entry] calls this function (if nil, `add-log-current-defun'
  17057. instead) with no arguments.  It returns a string or nil if it cannot guess.
  17058. Vadd-log-full-name
  17059. *Full name of user, for inclusion in ChangeLog daily headers.
  17060. This defaults to the value returned by the `user-full-name' function.
  17061. Vadd-log-mailing-address
  17062. *Electronic mail address of user, for inclusion in ChangeLog daily headers.
  17063. This defaults to the value of `user-mail-address'.
  17064. Fprompt-for-change-log-name
  17065. Prompt for a change log name.
  17066. Ffind-change-log
  17067. Find a change log file for \[add-change-log-entry] and return the name.
  17068. Optional arg FILE-NAME specifies the file to use.
  17069. If FILE-NAME is nil, use the value of `change-log-default-name' if non-nil.
  17070. Otherwise, search in the current directory and its successive parents
  17071. for a file named `ChangeLog' (or whatever we use on this operating system).
  17072.  
  17073. Once a file is found, `change-log-default-name' is set locally in the
  17074. current buffer to the complete file name.
  17075. Fadd-change-log-entry
  17076. Find change log file and add an entry for today.
  17077. Optional arg (interactive prefix) non-nil means prompt for user name and site.
  17078. Second arg is file name of change log.  If nil, uses `change-log-default-name'.
  17079. Third arg OTHER-WINDOW non-nil means visit in other window.
  17080. Fourth arg NEW-ENTRY non-nil means always create a new entry at the front;
  17081. never append to an existing entry.
  17082. Fadd-change-log-entry-other-window
  17083. Find change log file in other window and add an entry for today.
  17084. Optional arg (interactive prefix) non-nil means prompt for user name and site.
  17085. Second arg is file name of change log.  If nil, uses `change-log-default-name'.
  17086. Fchange-log-mode
  17087. Major mode for editing change logs; like Indented Text Mode.
  17088. Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74.
  17089. New log entries are usually made with \[add-change-log-entry] or \[add-change-log-entry-other-window].
  17090. Each entry behaves as a paragraph, and the entries for one day as a page.
  17091. Runs `change-log-mode-hook'.
  17092. Fadd-log-current-defun
  17093. Return name of function definition point is in, or nil.
  17094.  
  17095. Understands C, Lisp, LaTeX ("functions" are chapters, sections, ...),
  17096. Texinfo (@node titles), and Fortran.
  17097.  
  17098. Other modes are handled by a heuristic that looks in the 10K before
  17099. point for uppercase headings starting in the first column or
  17100. identifiers followed by `:' or `=', see variable
  17101. `add-log-current-defun-header-regexp'.
  17102.  
  17103. Has a preference of looking backwards.
  17104. Fapropos
  17105. Show all symbols whose names contain matches for REGEXP.
  17106. If optional argument DO-ALL is non-nil, does more (time-consuming) work such as
  17107. showing key bindings.  Optional argument PRED is called with each symbol, and
  17108. if it returns nil, the symbol is not shown.  Returns list of symbols and
  17109. documentation found.
  17110. Fsuper-apropos
  17111. Show symbols whose names/documentation contain matches for REGEXP.
  17112. If optional argument DO-ALL is non-nil, does more (time-consuming) work such as
  17113. showing key bindings and documentation that is not stored in the documentation
  17114. file.  Returns list of symbols and documentation found.
  17115. Vbookmark-map
  17116. Keymap containing bindings to bookmark functions.
  17117. It is not bound to any key by default: to bind it
  17118. so that you have a bookmark prefix, just use `global-set-key' and bind a
  17119. key of your choice to `bookmark-map'.  All interactive bookmark
  17120. functions have a binding in this keymap.
  17121. Fbookmark-set
  17122. Set a bookmark named NAME inside a file.
  17123. If name is nil, then the user will be prompted.
  17124. With prefix arg, will not overwrite a bookmark that has the same name
  17125. as NAME if such a bookmark already exists, but instead will "push"
  17126. the new bookmark onto the bookmark alist.  Thus the most recently set
  17127. bookmark with name NAME would be the one in effect at any given time,
  17128. but the others are still there, should you decide to delete the most
  17129. recent one.
  17130.  
  17131. To yank words from the text of the buffer and use them as part of the
  17132. bookmark name, type C-w while setting a bookmark.  Successive C-w's
  17133. yank successive words.
  17134.  
  17135. Typing C-u inserts the name of the last bookmark used in the buffer
  17136. (as an aid in using a single bookmark name to track your progress
  17137. through a large file).  If no bookmark was used, then C-u inserts the
  17138. name of the file being visited.
  17139.  
  17140. Use \[bookmark-delete] to remove bookmarks (you give it a name,
  17141. and it removes only the first instance of a bookmark with that name from
  17142. the list of bookmarks.)
  17143. Fbookmark-jump
  17144. Jump to bookmark BOOKMARK (a point in some file).  
  17145. You may have a problem using this function if the value of variable
  17146. `bookmark-alist' is nil.  If that happens, you need to load in some
  17147. bookmarks.  See help on function `bookmark-load' for more about
  17148. this.
  17149.  
  17150. If the file pointed to by BOOKMARK no longer exists, you will be asked
  17151. if you wish to give the bookmark a new location, and bookmark-jump
  17152. will then jump to the new location, as well as recording it in place
  17153. of the old one in the permanent bookmark record.
  17154. Fbookmark-relocate
  17155. Relocate BOOKMARK -- prompts for a filename, and makes an already
  17156. existing bookmark point to that file, instead of the one it used to
  17157. point at.  Useful when a file has been renamed after a bookmark was
  17158. set in it.
  17159. Fbookmark-insert-location
  17160. Insert the name of the file associated with BOOKMARK.
  17161. Optional second arg NO-HISTORY means don't record this in the
  17162. minibuffer history list `bookmark-history'.
  17163. Fbookmark-rename
  17164. Change the name of OLD bookmark to NEW name.  If called from
  17165. keyboard, prompts for OLD and NEW.  If called from menubar, OLD is
  17166. selected from a menu, and prompts for NEW.
  17167.  
  17168. If called from Lisp, prompts for NEW if only OLD was passed as an
  17169. argument.  If called with two strings, then no prompting is done.  You
  17170. must pass at least OLD when calling from Lisp.
  17171.  
  17172. While you are entering the new name, consecutive C-w's insert
  17173. consectutive words from the text of the buffer into the new bookmark
  17174. name.
  17175. Fbookmark-insert
  17176. Insert the text of the file pointed to by bookmark BOOKMARK.  
  17177. You may have a problem using this function if the value of variable
  17178. `bookmark-alist' is nil.  If that happens, you need to load in some
  17179. bookmarks.  See help on function `bookmark-load' for more about
  17180. this.
  17181. Fbookmark-delete
  17182. Delete BOOKMARK from the bookmark list.  
  17183. Removes only the first instance of a bookmark with that name.  If
  17184. there are one or more other bookmarks with the same name, they will
  17185. not be deleted.  Defaults to the "current" bookmark (that is, the
  17186. one most recently used in this file, if any).
  17187. Optional second arg BATCH means don't update the bookmark list buffer,
  17188. probably because we were called from there.
  17189. Fbookmark-write
  17190. Write bookmarks to a file (for which the user will be prompted
  17191. interactively).  Don't use this in Lisp programs; use bookmark-save
  17192. instead.
  17193. Fbookmark-save
  17194. Save currently defined bookmarks.
  17195. Saves by default in the file defined by the variable
  17196. `bookmark-default-file'.  With a prefix arg, save it in file FILE
  17197. (second argument).
  17198.  
  17199. If you are calling this from Lisp, the two arguments are PREFIX-ARG
  17200. and FILE, and if you just want it to write to the default file, then
  17201. pass no arguments.  Or pass in nil and FILE, and it will save in FILE
  17202. instead.  If you pass in one argument, and it is non-nil, then the
  17203. user will be interactively queried for a file to save in.
  17204.  
  17205. When you want to load in the bookmarks from a file, use
  17206. `bookmark-load', \[bookmark-load].  That function will prompt you
  17207. for a file, defaulting to the file defined by variable
  17208. `bookmark-default-file'.
  17209. Fbookmark-load
  17210. Load bookmarks from FILE (which must be in bookmark format).
  17211. Appends loaded bookmarks to the front of the list of bookmarks.  If
  17212. optional second argument REVERT is non-nil, existing bookmarks are
  17213. destroyed.  Optional third arg NO-MSG means don't display any messages
  17214. while loading.
  17215.  
  17216. If you load a file that doesn't contain a proper bookmark alist, you
  17217. will corrupt Emacs's bookmark list.  Generally, you should only load
  17218. in files that were created with the bookmark functions in the first
  17219. place.  Your own personal bookmark file, `~/.emacs.bmk', is
  17220. maintained automatically by Emacs; you shouldn't need to load it
  17221. explicitly.
  17222. Fbookmark-bmenu-list
  17223. Display a list of existing bookmarks.
  17224. The list is displayed in a buffer named `*Bookmark List*'.
  17225. The leftmost column displays a D if the bookmark is flagged for
  17226. deletion, or > if it is flagged for displaying.
  17227. Fbookmark-menu-insert
  17228. Insert the text of the file pointed to by bookmark BOOKMARK.  
  17229. You may have a problem using this function if the value of variable
  17230. `bookmark-alist' is nil.  If that happens, you need to load in some
  17231. bookmarks.  See help on function `bookmark-load' for more about
  17232. this.
  17233.  
  17234. Warning: this function only takes an EVENT as argument.  Use the
  17235. corresponding bookmark function from Lisp (the one without the
  17236. "-menu-" in its name).
  17237. Fbookmark-menu-jump
  17238. Jump to bookmark BOOKMARK (a point in some file).  
  17239. You may have a problem using this function if the value of variable
  17240. `bookmark-alist' is nil.  If that happens, you need to load in some
  17241. bookmarks.  See help on function `bookmark-load' for more about
  17242. this.
  17243.  
  17244. Warning: this function only takes an EVENT as argument.  Use the
  17245. corresponding bookmark function from Lisp (the one without the
  17246. "-menu-" in its name).
  17247. Fbookmark-menu-locate
  17248. Insert the name of the file associated with BOOKMARK. 
  17249. (This is not the same as the contents of that file).
  17250.  
  17251. Warning: this function only takes an EVENT as argument.  Use the
  17252. corresponding bookmark function from Lisp (the one without the
  17253. "-menu-" in its name).
  17254. Fbookmark-menu-rename
  17255. Change the name of OLD-BOOKMARK to NEWNAME.  
  17256. If called from keyboard, prompts for OLD-BOOKMARK and NEWNAME.
  17257. If called from menubar, OLD-BOOKMARK is selected from a menu, and
  17258. prompts for NEWNAME. 
  17259. If called from Lisp, prompts for NEWNAME if only OLD-BOOKMARK was
  17260. passed as an argument.  If called with two strings, then no prompting
  17261. is done.  You must pass at least OLD-BOOKMARK when calling from Lisp.
  17262.  
  17263. While you are entering the new name, consecutive C-w's insert
  17264. consectutive words from the text of the buffer into the new bookmark
  17265. name.
  17266.  
  17267. Warning: this function only takes an EVENT as argument.  Use the
  17268. corresponding bookmark function from Lisp (the one without the
  17269. "-menu-" in its name).
  17270. Fbookmark-menu-delete
  17271. Delete the bookmark named NAME from the bookmark list.  
  17272. Removes only the first instance of a bookmark with that name.  If
  17273. there are one or more other bookmarks with the same name, they will
  17274. not be deleted.  Defaults to the "current" bookmark (that is, the
  17275. one most recently used in this file, if any).
  17276.  
  17277. Warning: this function only takes an EVENT as argument.  Use the
  17278. corresponding bookmark function from Lisp (the one without the
  17279. "-menu-" in its name).
  17280. Frepeat-matching-complex-command
  17281. Edit and re-evaluate complex command with name matching PATTERN.
  17282. Matching occurrences are displayed, most recent first, until you
  17283. select a form for evaluation.  If PATTERN is empty (or nil), every form
  17284. in the command history is offered.  The form is placed in the minibuffer
  17285. for editing and the result is evaluated.
  17286. Flist-command-history
  17287. List history of commands typed to minibuffer.
  17288. The number of commands listed is controlled by `list-command-history-max'.
  17289. Calls value of `list-command-history-filter' (if non-nil) on each history
  17290. element to judge if that element should be excluded from the list.
  17291.  
  17292. The buffer is left in Command History mode.
  17293. Fcommand-history-mode
  17294. Major mode for examining commands from `command-history'.
  17295. The number of commands listed is controlled by `list-command-history-max'.
  17296. The command history is filtered by `list-command-history-filter' if non-nil.
  17297. Use \<command-history-map>\[command-history-repeat] to repeat the command on the current line.
  17298.  
  17299. Otherwise much like Emacs-Lisp Mode except that there is no self-insertion
  17300. and digits provide prefix arguments.  Tab does not indent.
  17301. \{command-history-map}
  17302. Calls the value of `command-history-hook' if that is non-nil.
  17303. The Command History listing is recomputed each time this mode is invoked.
  17304. Fdisplay-column-mode
  17305. Toggle display column mode.
  17306. With prefix arg, turn display column mode on iff arg is positive.
  17307.  
  17308. When display column mode is on, the current column and line number are
  17309. displayed in the mode line.
  17310. Fcompare-windows
  17311. Compare text in current window with text in next window.
  17312. Compares the text starting at point in each window,
  17313. moving over text in each one as far as they match.
  17314.  
  17315. A prefix arg means ignore changes in whitespace.
  17316. The variable `compare-windows-whitespace' controls how whitespace is skipped.
  17317.  
  17318. If `compare-ignore-case' is non-nil, changes in case are also ignored.
  17319. Vcompilation-mode-hook
  17320. *List of hook functions run by `compilation-mode' (see `run-hooks').
  17321. Vcompilation-window-height
  17322. *Number of lines in a compilation window.  If nil, use Emacs default.
  17323. Vcompilation-buffer-name-function
  17324. Function to compute the name of a compilation buffer.
  17325. The function receives one argument, the name of the major mode of the
  17326. compilation buffer.  It should return a string.
  17327. nil means compute the name with `(concat "*" (downcase major-mode) "*")'.
  17328. Vcompilation-finish-function
  17329. *Function to call when a compilation process finishes.
  17330. It is called with two arguments: the compilation buffer, and a string
  17331. describing how the process finished.
  17332. Vcompilation-search-path
  17333. *List of directories to search for source files named in error messages.
  17334. Elements should be directory names, not file names of directories.
  17335. nil as an element means to try the default directory.
  17336. Fcompile
  17337. Compile the program including the current buffer.  Default: run `make'.
  17338. Runs COMMAND, a shell command, in a separate process asynchronously
  17339. with output going to the buffer `*compilation*'.
  17340.  
  17341. You can then use the command \[next-error] to find the next error message
  17342. and move to the source code that caused it.
  17343.  
  17344. To run more than one compilation at once, start one and rename the
  17345. `*compilation*' buffer to some other name with \[rename-buffer].
  17346. Then start the next one.
  17347.  
  17348. The name used for the buffer is actually whatever is returned by
  17349. the function in `compilation-buffer-name-function', so you can set that
  17350. to a function that generates a unique name.
  17351. Fgrep
  17352. Run grep, with user-specified args, and collect output in a buffer.
  17353. While grep runs asynchronously, you can use the \[next-error] command
  17354. to find the text that grep hits refer to.
  17355.  
  17356. This command uses a special history list for its arguments, so you can
  17357. easily repeat a grep command.
  17358. Fcompilation-minor-mode
  17359. Toggle compilation minor mode.
  17360. With arg, turn compilation mode on if and only if arg is positive.
  17361. See `compilation-mode'.
  17362. ! \{compilation-mode-map}
  17363. Fnext-error
  17364. Visit next compilation error message and corresponding source code.
  17365. This operates on the output from the \[compile] command.
  17366. If all preparsed error messages have been processed,
  17367. the error message buffer is checked for new ones.
  17368.  
  17369. A prefix arg specifies how many error messages to move;
  17370. negative means move back to previous error messages.
  17371. Just C-u as a prefix means reparse the error message buffer
  17372. and start at the first error.
  17373.  
  17374. \[next-error] normally applies to the most recent compilation started,
  17375. but as long as you are in the middle of parsing errors from one compilation
  17376. output buffer, you stay with that compilation output buffer.
  17377.  
  17378. Use \[next-error] in a compilation output buffer to switch to
  17379. processing errors from that compilation.
  17380.  
  17381. See variables `compilation-parse-errors-function' and
  17382. `compilation-error-regexp-alist' for customization ideas.
  17383. Fprevious-error
  17384. Visit previous compilation error message and corresponding source code.
  17385. This operates on the output from the \[compile] command.
  17386. Ffirst-error
  17387. Reparse the error message buffer and start at the first error
  17388. Visit corresponding source code.
  17389. This operates on the output from the \[compile] command.
  17390. Fdabbrev-completion
  17391. Completion on current word.
  17392. Like \[dabbrev-expand] but finds all expansions in the current buffer
  17393. and presents suggestions for completion.
  17394.  
  17395. With a prefix argument, it searches all buffers accepted by the
  17396. function pointed out by `dabbrev-friend-buffer-function' to find the
  17397. completions.
  17398.  
  17399. If the prefix argument is 16 (which comes from C-u C-u),
  17400. then it searches *all* buffers.
  17401.  
  17402. With no prefix argument, it reuses an old completion list
  17403. if there is a suitable one already.
  17404. Fdabbrev-expand
  17405. Expand previous word "dynamically".
  17406.  
  17407. Expands to the most recent, preceding word for which this is a prefix.
  17408. If no suitable preceding word is found, words following point are
  17409. considered.  If still no suitable word is found, then look in the
  17410. buffers accepted by the function pointed out by variable
  17411. `dabbrev-friend-buffer-function'.
  17412.  
  17413. A positive prefix argument, N, says to take the Nth backward *distinct*
  17414. possibility.  A negative argument says search forward.
  17415.  
  17416. If the cursor has not moved from the end of the previous expansion and
  17417. no argument is given, replace the previously-made expansion
  17418. with the next possible expansion not yet tried.
  17419.  
  17420. The variable `dabbrev-backward-only' may be used to limit the
  17421. direction of search to backward if set non-nil.
  17422.  
  17423. See also `dabbrev-abbrev-char-regexp' and \[dabbrev-completion].
  17424. Vdiff-switches
  17425. *A string or list of strings specifying switches to be be passed to diff.
  17426. Fdiff
  17427. Find and display the differences between OLD and NEW files.
  17428. Interactively the current buffer's file name is the default for NEW
  17429. and a backup file for NEW is the default for OLD.
  17430. With prefix arg, prompt for diff switches.
  17431. Fdiff-backup
  17432. Diff this file with its backup file or vice versa.
  17433. Uses the latest backup, if there are several numerical backups.
  17434. If this file is a backup, diff it with its original.
  17435. The backup file is the first file given to `diff'.
  17436. Fediff-patch-file
  17437. Run Ediff by patching FILE-TP-PATCH.
  17438. Fediff-files
  17439. Run Ediff on a pair of files, FILE-A and FILE-B.
  17440. Fediff-files3
  17441. Run Ediff on three files, FILE-A, FILE-B, and FILE-C.
  17442. Fediff-buffers
  17443. Run Ediff on a pair of buffers, BUFFER-A and BUFFER-B.
  17444. Fediff-buffers3
  17445. Run Ediff on three buffers, BUFFER-A, BUFFER-B, and BUFFER-C.
  17446. Fediff-directories
  17447. Run Ediff on a pair of directories, DIR1 and DIR2, comparing files that have
  17448. the same name in both. The third argument, REGEXP, is a regular expression that
  17449. further filters the file names.
  17450. Fediff-directory-revisions
  17451. Run Ediff on a directory, DIR1, comparing its files with their revisions.
  17452. The second argument, REGEXP, is a regular expression that filters the file
  17453. names. Only the files that are under revision control are taken into account.
  17454. Fediff-directories3
  17455. Run Ediff on three directories, DIR1, DIR2, and DIR3, comparing files that
  17456. have the same name in all three. The last argument, REGEXP, is a regular
  17457. expression that further filters the file names.
  17458. Fediff-merge-directories
  17459. Run Ediff on a pair of directories, DIR1 and DIR2, merging files that have
  17460. the same name in both. The third argument, REGEXP, is a regular expression that
  17461. further filters the file names.
  17462. Fediff-merge-directories-with-ancestor
  17463. Run Ediff on a pair of directories, DIR1 and DIR2, merging files that have
  17464. the same name in both. The third argument, REGEXP, is a regular expression that
  17465. further filters the file names.
  17466. Fediff-merge-directory-revisions
  17467. Run Ediff on a directory, DIR1, merging its files with their revisions.
  17468. The second argument, REGEXP, is a regular expression that filters the file
  17469. names. Only the files that are under revision control are taken into account.
  17470. Fediff-merge-directory-revisions-with-ancestor
  17471. Run Ediff on a directory, DIR1, merging its files with their revisions and ancestors.
  17472. The second argument, REGEXP, is a regular expression that filters the file
  17473. names. Only the files that are under revision control are taken into account.
  17474. Fediff-windows-wordwise
  17475. Compare WIND-A and WIND-B, which are selected by clicking, wordwise.
  17476. With prefix argument, DUMB-MODE, or on a non-windowing display, works as
  17477. follows:
  17478. If WIND-A is nil, use selected window.
  17479. If WIND-B is nil, use window next to WIND-A.
  17480. Fediff-windows-linewise
  17481. Compare WIND-A and WIND-B, which are selected by clicking, linewise.
  17482. With prefix argument, DUMB-MODE, or on a non-windowing display, works as
  17483. follows:
  17484. If WIND-A is nil, use selected window.
  17485. If WIND-B is nil, use window next to WIND-A.
  17486. Fediff-regions-wordwise
  17487. Run Ediff on a pair of regions in two different buffers.
  17488. Regions (i.e., point and mark) are assumed to be set in advance.
  17489. This function is effective only for relatively small regions, up to 200
  17490. lines. For large regions, use `ediff-regions-linewise'.
  17491. Fediff-regions-linewise
  17492. Run Ediff on a pair of regions in two different buffers.
  17493. Regions (i.e., point and mark) are assumed to be set in advance.
  17494. Each region is enlarged to contain full lines.
  17495. This function is effective for large regions, over 100-200
  17496. lines. For small regions, use `ediff-regions-wordwise'.
  17497. Fediff-merge-files
  17498. Merge two files without ancestor.
  17499. Fediff-merge-files-with-ancestor
  17500. Merge two files with ancestor.
  17501. Fediff-merge-buffers
  17502. Merge buffers without ancestor.
  17503. Fediff-merge-buffers-with-ancestor
  17504. Merge buffers with ancestor.
  17505. Fediff-merge-revisions
  17506. Run Ediff by merging two revisions of a file.
  17507. The file is the optional FILE argument or the file visited by the current
  17508. buffer.
  17509. Fediff-merge-revisions-with-ancestor
  17510. Run Ediff by merging two revisions of a file with a common ancestor.
  17511. The file is the the optional FILE argument or the file visited by the current
  17512. buffer.
  17513. Fediff-patch-buffer
  17514. Run Ediff by patching BUFFER-NAME.
  17515. Fediff-revision
  17516. Run Ediff by comparing versions of a file.
  17517. The file is an optional FILE argument or the file visited by the current
  17518. buffer. Use `vc.el' or `rcs.el' depending on `ediff-version-control-package'.
  17519. Fedit-faces
  17520. Alter face characteristics by editing a list of defined faces.
  17521. Pops up a buffer containing a list of defined faces.
  17522.  
  17523. Editing commands:
  17524.  
  17525. \{edit-faces-map}
  17526. Freport-emacs-bug
  17527. Report a bug in GNU Emacs.
  17528. Prompts for bug subject.  Leaves you in a mail buffer.
  17529. Femerge-files
  17530. Run Emerge on two files.
  17531. Femerge-files-with-ancestor
  17532. Run Emerge on two files, giving another file as the ancestor.
  17533. Femerge-buffers
  17534. Run Emerge on two buffers.
  17535. Femerge-buffers-with-ancestor
  17536. Run Emerge on two buffers, giving another buffer as the ancestor.
  17537. Femerge-revisions
  17538. Emerge two RCS revisions of a file.
  17539. Femerge-revisions-with-ancestor
  17540. Emerge two RCS revisions of a file, with another revision as ancestor.
  17541. Vtags-build-completion-table
  17542. *If this variable is nil, then tags completion is disabled.
  17543. If this variable is t, then things which prompt for tags will do so with 
  17544.  completion across all known tags.
  17545. If this variable is the symbol `ask', then you will be asked whether each
  17546.  tags table should be added to the completion list as it is read in.
  17547.  (With the exception that for very small tags tables, you will not be asked,
  17548.  since they can be parsed quickly.)
  17549. Vtags-always-exact
  17550. *If this variable is non-nil, then tags always looks for exact matches.
  17551. Vtag-table-alist
  17552. *A list which determines which tags files should be active for a 
  17553. given buffer.  This is not really an association list, in that all 
  17554. elements are checked.  The CAR of each element of this list is a 
  17555. pattern against which the buffer's file name is compared; if it 
  17556. matches, then the CDR of the list should be the name of the tags
  17557. table to use.  If more than one element of this list matches the
  17558. buffer's file name, then all of the associated tags tables will be
  17559. used.  Earlier ones will be searched first.
  17560.  
  17561. If the CAR of elements of this list are strings, then they are treated
  17562. as regular-expressions against which the file is compared (like the
  17563. auto-mode-alist).  If they are not strings, then they are evaluated.
  17564. If they evaluate to non-nil, then the current buffer is considered to
  17565. match.
  17566.  
  17567. If the CDR of the elements of this list are strings, then they are
  17568. assumed to name a TAGS file.  If they name a directory, then the string
  17569. "TAGS" is appended to them to get the file name.  If they are not 
  17570. strings, then they are evaluated, and must return an appropriate string.
  17571.  
  17572. For example:
  17573.   (setq tag-table-alist
  17574.     '(("/usr/src/public/perl/" . "/usr/src/public/perl/perl-3.0/")
  17575.      ("\\.el$" . "/usr/local/emacs/src/")
  17576.      ("/jbw/gnu/" . "/usr15/degree/stud/jbw/gnu/")
  17577.      ("" . "/usr/local/emacs/src/")
  17578.      ))
  17579.  
  17580. This means that anything in the /usr/src/public/perl/ directory should use
  17581. the TAGS file /usr/src/public/perl/perl-3.0/TAGS; and file ending in .el should
  17582. use the TAGS file /usr/local/emacs/src/TAGS; and anything in or below the
  17583. directory /jbw/gnu/ should use the TAGS file /usr15/degree/stud/jbw/gnu/TAGS.
  17584. A file called something like "/usr/jbw/foo.el" would use both the TAGS files
  17585. /usr/local/emacs/src/TAGS and /usr15/degree/stud/jbw/gnu/TAGS (in that order)
  17586. because it matches both patterns.
  17587.  
  17588. If the buffer-local variable `buffer-tag-table' is set, then it names a tags
  17589. table that is searched before all others when find-tag is executed from this
  17590. buffer.
  17591.  
  17592. If there is a file called "TAGS" in the same directory as the file in 
  17593. question, then that tags file will always be used as well (after the
  17594. `buffer-tag-table' but before the tables specified by this list.)
  17595.  
  17596. If the variable tags-file-name is set, then the tags file it names will apply
  17597. to all buffers (for backwards compatibility.)  It is searched first.
  17598.  
  17599. Fvisit-tags-table
  17600. Tell tags commands to use tags table file FILE first.
  17601. FILE should be the name of a file created with the `etags' program.
  17602. A directory name is ok too; it means file TAGS in that directory.
  17603. Ffind-tag
  17604. *Find tag whose name contains TAGNAME.
  17605.  Selects the buffer that the tag is contained in
  17606. and puts point at its definition.
  17607.  If TAGNAME is a null string, the expression in the buffer
  17608. around or before point is used as the tag name.
  17609.  If called interactively with a numeric argument, searches for the next tag
  17610. in the tag table that matches the tagname used in the previous find-tag.
  17611.  If second arg OTHER-WINDOW is non-nil, uses another window to display
  17612. the tag.
  17613.  
  17614. This version of this function supports multiple active tags tables,
  17615. and completion.
  17616.  
  17617. Variables of note:
  17618.  
  17619.   tag-table-alist        controls which tables apply to which buffers
  17620.   tags-file-name        a default tags table
  17621.   tags-build-completion-table   controls completion behavior
  17622.   buffer-tag-table        another way of specifying a buffer-local table
  17623.   make-tags-files-invisible    whether tags tables should be very hidden
  17624.   tag-mark-stack-max        how many tags-based hops to remember
  17625. Ffind-tag-other-window
  17626. *Find tag whose name contains TAGNAME.
  17627.  Selects the buffer that the tag is contained in in another window
  17628. and puts point at its definition.
  17629.  If TAGNAME is a null string, the expression in the buffer
  17630. around or before point is used as the tag name.
  17631.  If second arg NEXT is non-nil (interactively, with prefix arg),
  17632. searches for the next tag in the tag table
  17633. that matches the tagname used in the previous find-tag.
  17634.  
  17635. This version of this function supports multiple active tags tables,
  17636. and completion.
  17637.  
  17638. Variables of note:
  17639.  
  17640.   tag-table-alist        controls which tables apply to which buffers
  17641.   tags-file-name        a default tags table
  17642.   tags-build-completion-table   controls completion behavior
  17643.   buffer-tag-table        another way of specifying a buffer-local table
  17644.   make-tags-files-invisible    whether tags tables should be very hidden
  17645.   tag-mark-stack-max        how many tags-based hops to remember
  17646. Fnext-file
  17647. Select next file among files in current tag table(s).
  17648.  
  17649. A first argument of t (prefix arg, if interactive) initializes to the
  17650. beginning of the list of files in the (first) tags table.  If the argument
  17651. is neither nil nor t, it is evalled to initialize the list of files.
  17652.  
  17653. Non-nil second argument NOVISIT means use a temporary buffer
  17654. to save time and avoid uninteresting warnings.
  17655.  
  17656. Value is nil if the file was already visited;
  17657. if the file was newly read in, the value is the filename.
  17658. Ftags-loop-continue
  17659. Continue last \[tags-search] or \[tags-query-replace] command.
  17660. Used noninteractively with non-nil argument to begin such a command (the
  17661. argument is passed to `next-file', which see).
  17662. Two variables control the processing we do on each file:
  17663. the value of `tags-loop-scan' is a form to be executed on each file
  17664. to see if it is interesting (it returns non-nil if so)
  17665. and `tags-loop-operate' is a form to execute to operate on an interesting file
  17666. If the latter returns non-nil, we exit; otherwise we scan the next file.
  17667. Ftags-search
  17668. Search through all files listed in tags table for match for REGEXP.
  17669. Stops when a match is found.
  17670. To continue searching for next match, use command \[tags-loop-continue].
  17671.  
  17672. See documentation of variable `tag-table-alist'.
  17673. Ftags-query-replace
  17674. Query-replace-regexp FROM with TO through all files listed in tags table.
  17675. Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
  17676. If you exit (\[keyboard-quit] or ESC), you can resume the query-replace
  17677. with the command \[tags-loop-continue].
  17678.  
  17679. See documentation of variable `tag-table-alist'.
  17680. Flist-tags
  17681. Display list of tags in file FILE.
  17682. FILE should not contain a directory spec
  17683. unless it has one in the tag table.
  17684. Ftags-apropos
  17685. Display list of all tags in tag table REGEXP matches.
  17686. Ffast-lock-mode
  17687. Toggle Fast Lock mode.
  17688. With arg, turn Fast Lock mode on if and only if arg is positive and the buffer
  17689. is associated with a file.  Enable it automatically in your `~/.emacs' by:
  17690.  
  17691.  (add-hook 'font-lock-mode-hook 'turn-on-fast-lock)
  17692.  
  17693. If Fast Lock mode is enabled, and the current buffer does not contain any text
  17694. properties, any associated Font Lock cache is used if its timestamp matches the
  17695. buffer's file, and its `font-lock-keywords' match those that you are using.
  17696.  
  17697. Font Lock caches may be saved:
  17698.  - When you save the file's buffer.
  17699.  - When you kill an unmodified file's buffer.
  17700.  - When you exit Emacs, for all unmodified or saved buffers.
  17701. Depending on the value of `fast-lock-save-events'.
  17702. See also the commands `fast-lock-read-cache' and `fast-lock-save-cache'.
  17703.  
  17704. Use \[font-lock-fontify-buffer] to fontify the buffer if the cache is bad.
  17705.  
  17706. Various methods of control are provided for the Font Lock cache.  In general,
  17707. see variable `fast-lock-cache-directories' and function `fast-lock-cache-name'.
  17708. For saving, see variables `fast-lock-minimum-size', `fast-lock-save-events',
  17709. `fast-lock-save-others' and `fast-lock-save-faces'.
  17710.  
  17711. Use \[fast-lock-submit-bug-report] to send bug reports or feedback.
  17712. Fturn-on-fast-lock
  17713. Unconditionally turn on Fast Lock mode.
  17714. Fmake-file-part
  17715. Make a file part on buffer BUFFER out of the region.  Call it NAME.
  17716. This command creates a new buffer containing the contents of the
  17717. region and marks the buffer as referring to the specified buffer,
  17718. called the `master buffer'.  When the file-part buffer is saved,
  17719. its changes are integrated back into the master buffer.  When the
  17720. master buffer is deleted, all file parts are deleted with it.
  17721.  
  17722. When called from a function, expects four arguments, START, END,
  17723. NAME, and BUFFER, all of which are optional and default to the
  17724. beginning of BUFFER, the end of BUFFER, a name generated from
  17725. BUFFER's name, and the current buffer, respectively.
  17726. Vfont-lock-keywords
  17727. *The keywords to highlight.
  17728. If this is a list, then elements may be of the forms:
  17729.  
  17730.   "string"              ; a regexp to highlight in the 
  17731.                   ;  `font-lock-keyword-face'.
  17732.   ("string" . integer)        ; match N of the regexp will be highlighted
  17733.   ("string" . face-name)      ; use the named face
  17734.   ("string" integer face-name)    ; both of the above
  17735.   ("string" integer face-name t)  ; this allows highlighting to overlap
  17736.                   ;  with already-highlighted regions.
  17737.  
  17738. These regular expressions should not match text which spans lines.  Multi-line
  17739. patterns will be correctly fontified when \[font-lock-fontify-buffer] is used,
  17740. but will not be matched by the auto-fontification that font-lock-mode does,
  17741. since it looks at only one line at a time.
  17742.  
  17743. Be careful composing regexps for this list; the wrong pattern can dramatically
  17744. slow things down!
  17745. Vfont-lock-auto-fontify
  17746. *Whether font-lock should automatically fontify files as they're loaded.
  17747. This will only happen if font-lock has fontifying keywords for the major
  17748. mode of the file.  You can get finer-grained control over auto-fontification
  17749. by using this variable in combination with `font-lock-mode-enable-list' or
  17750. `font-lock-mode-disable-list'.
  17751. Vfont-lock-mode-enable-list
  17752. *List of modes to auto-fontify, if `font-lock-auto-fontify' is nil.
  17753. Vfont-lock-mode-disable-list
  17754. *List of modes not to auto-fontify, if `font-lock-auto-fontify' is t.
  17755. Vfont-lock-use-colors
  17756. *If true, font-lock will by default use colors to fontify text.
  17757. Set this *before* loading font-lock (e.g. in your init file).  You can
  17758. also explicitly reset the font-lock faces to these colors at any time by
  17759. calling the function `font-lock-use-default-colors'.
  17760.  
  17761. See also `font-lock-use-fonts'.  If you want more control over the faces
  17762. used for fontification, see the documentation of `font-lock-mode' for
  17763. how to do it.  In such a case, you might want to consider setting both
  17764. `font-lock-use-colors' and `font-lock-use-fonts' to nil to prevent
  17765. font-lock from initializing the faces.
  17766. Vfont-lock-use-fonts
  17767. *If true, font-lock will by default use different fonts to fontify text.
  17768. Set this *before* loading font-lock (e.g. in your init file).  You can
  17769. also explicitly reset the font-lock faces to these fonts at any time by
  17770. calling the function `font-lock-use-default-fonts'.
  17771.  
  17772. See also `font-lock-use-colors'.  If you want more control over the faces
  17773. used for fontification, see the documentation of `font-lock-mode' for
  17774. how to do it.  In such a case, you might want to consider setting both
  17775. `font-lock-use-colors' and `font-lock-use-fonts' to nil to prevent
  17776. font-lock from initializing the faces.
  17777. Vfont-lock-use-maximal-decoration
  17778. *If true, font-lock will use a larger set of decorations than normal.
  17779. Set this *before* loading font-lock (e.g. in your init file).  This
  17780. typically results in keywords being fontified as well as comments
  17781. and strings and such; however, fontification will take longer.  If you
  17782. want to change this when font-lock is already loaded, use the functions
  17783. `font-lock-use-default-minimal-decoration' or
  17784. `font-lock-use-default-maximal-decoration'.
  17785. Ffont-lock-mode
  17786. Toggle Font Lock Mode.
  17787. With arg, turn font-lock mode on if and only if arg is positive.
  17788. In the font-lock minor mode, text is fontified as you type it:
  17789.  
  17790.  - comments are displayed in font-lock-comment-face;
  17791.  - strings are displayed in font-lock-string-face;
  17792.  - documentation strings are displayed in font-lock-doc-string-face;
  17793.  - function and variable names in their defining forms are displayed
  17794.    in font-lock-function-name-face;
  17795.  - and certain other expressions are displayed in other faces
  17796.    according to the value of the variable `font-lock-keywords'.
  17797.  
  17798. When font-lock mode is turned on/off, the buffer is fontified/defontified.
  17799. To fontify a buffer without having newly typed text become fontified, you
  17800. can use \[font-lock-fontify-buffer].
  17801.  
  17802. See the variable `font-lock-keywords' for customization.
  17803. Fturn-on-font-lock
  17804. Unconditionally turn on Font Lock mode.
  17805. Ffont-lock-fontify-buffer
  17806. Fontify the current buffer the way `font-lock-mode' would:
  17807.  
  17808.  - comments are displayed in font-lock-comment-face;
  17809.  - strings are displayed in font-lock-string-face;
  17810.  - documentation strings are displayed in font-lock-doc-string-face;
  17811.  - function and variable names in their defining forms are displayed
  17812.    in font-lock-function-name-face;
  17813.  - and certain other expressions are displayed in other faces
  17814.    according to the value of the variable `font-lock-keywords'.
  17815.  
  17816. This can take a while for large buffers.
  17817. Fsc-mode
  17818. Toggle sc-mode.
  17819. SYSTEM can be sccs, rcs or cvs.
  17820. Cvs requires the pcl-cvs package.
  17821.  
  17822. The following commands are available
  17823. \[sc-next-operation]    perform next logical source control operation on current file
  17824. \[sc-show-changes]    compare the version being edited with an older one
  17825. \[sc-version-diff-file]    compare two older versions of a file
  17826. \[sc-show-history]        display change history of current file
  17827. \[sc-visit-previous-revision]    display an older revision of current file
  17828. \[sc-revert-file]        revert buffer to last checked-in version
  17829. \[sc-list-all-locked-files]        show all files locked in current directory
  17830. \[sc-list-locked-files]        show all files locked by you in current directory
  17831. \[sc-list-registered-files]        show all files under source control in current directory
  17832. \[sc-update-directory]        get fresh copies of files checked-in by others in current directory
  17833. \[sc-rename-file]        rename the current file and its source control file
  17834.  
  17835.  
  17836. While you are entering a change log message for a check in, sc-log-entry-mode
  17837. will be in effect.
  17838.  
  17839. Global user options:
  17840.     sc-diff-command    A list consisting of the command and flags
  17841.             to be used for generating context diffs.
  17842.     sc-mode-expert    suppresses some conformation prompts,
  17843.             notably for delta aborts and file saves.
  17844.     sc-max-log-size    specifies the maximum allowable size
  17845.             of a log message plus one.
  17846.  
  17847.  
  17848. When using SCCS you have additional commands and options
  17849.  
  17850. \[sccs-insert-headers]        insert source control headers in current file
  17851.  
  17852. When you generate headers into a buffer using \[sccs-insert-headers],
  17853. the value of sc-insert-headers-hook is called before insertion. If the
  17854. file is recognized a C or Lisp source, sc-insert-c-header-hook or
  17855. sc-insert-lisp-header-hook is called after insertion respectively.
  17856.  
  17857.     sccs-headers-wanted    which %-keywords to insert when adding
  17858.             headers with C-c h
  17859.     sccs-insert-static    if non-nil, keywords inserted in C files
  17860.             get stuffed in a static string area so that
  17861.             what(1) can see them in the compiled object code.
  17862.  
  17863. When using CVS you have additional commands
  17864.  
  17865. \[sc-cvs-update-directory]    update the current directory using pcl-cvs
  17866. \[sc-cvs-file-status]        show the CVS status of current file
  17867.  
  17868. Fgnuserv-start
  17869. Allow this Emacs process to be a server for client processes.
  17870. This starts a server communications subprocess through which
  17871. client "editors" (gnuclient and gnudoit) can send editing commands to 
  17872. this Emacs job. See the gnuserv(1) manual page for more details.
  17873.  
  17874. Prefix arg means just kill any existing server communications subprocess.
  17875. Fgopher
  17876. Start a gopher session.  With C-u, prompt for a gopher server.
  17877. Fgopher-atpoint
  17878. Try to interpret the text around point as a gopher bookmark, and dispatch
  17879. to that object.
  17880. Fhexl-mode
  17881. \<hexl-mode-map>
  17882. A major mode for editing binary files in hex dump format.
  17883.  
  17884. This function automatically converts a buffer into the hexl format
  17885. using the function `hexlify-buffer'.
  17886.  
  17887. Each line in the buffer has an "address" (displayed in hexadecimal)
  17888. representing the offset into the file that the characters on this line
  17889. are at and 16 characters from the file (displayed as hexadecimal
  17890. values grouped every 16 bits) and as their ASCII values.
  17891.  
  17892. If any of the characters (displayed as ASCII characters) are
  17893. unprintable (control or meta characters) they will be replaced as
  17894. periods.
  17895.  
  17896. If `hexl-mode' is invoked with an argument the buffer is assumed to be
  17897. in hexl format.
  17898.  
  17899. A sample format:
  17900.  
  17901.   HEX ADDR: 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f     ASCII-TEXT
  17902.   --------  ---- ---- ---- ---- ---- ---- ---- ----  ----------------
  17903.   00000000: 5468 6973 2069 7320 6865 786c 2d6d 6f64  This is hexl-mod
  17904.   00000010: 652e 2020 4561 6368 206c 696e 6520 7265  e.  Each line re
  17905.   00000020: 7072 6573 656e 7473 2031 3620 6279 7465  presents 16 byte
  17906.   00000030: 7320 6173 2068 6578 6164 6563 696d 616c  s as hexadecimal
  17907.   00000040: 2041 5343 4949 0a61 6e64 2070 7269 6e74   ASCII.and print
  17908.   00000050: 6162 6c65 2041 5343 4949 2063 6861 7261  able ASCII chara
  17909.   00000060: 6374 6572 732e 2020 416e 7920 636f 6e74  cters.  Any cont
  17910.   00000070: 726f 6c20 6f72 206e 6f6e 2d41 5343 4949  rol or non-ASCII
  17911.   00000080: 2063 6861 7261 6374 6572 730a 6172 6520   characters.are 
  17912.   00000090: 6469 7370 6c61 7965 6420 6173 2070 6572  displayed as per
  17913.   000000a0: 696f 6473 2069 6e20 7468 6520 7072 696e  iods in the prin
  17914.   000000b0: 7461 626c 6520 6368 6172 6163 7465 7220  table character 
  17915.   000000c0: 7265 6769 6f6e 2e0a                      region..
  17916.  
  17917. Movement is as simple as movement in a normal emacs text buffer.  Most
  17918. cursor movement bindings are the same (ie. Use \[hexl-backward-char], \[hexl-forward-char], \[hexl-next-line], and \[hexl-previous-line]
  17919. to move the cursor left, right, down, and up).
  17920.  
  17921. Advanced cursor movement commands (ala \[hexl-beginning-of-line], \[hexl-end-of-line], \[hexl-beginning-of-buffer], and \[hexl-end-of-buffer]) are
  17922. also supported.
  17923.  
  17924. There are several ways to change text in hexl mode:
  17925.  
  17926. ASCII characters (character between space (0x20) and tilde (0x7E)) are
  17927. bound to self-insert so you can simply type the character and it will
  17928. insert itself (actually overstrike) into the buffer.
  17929.  
  17930. \[hexl-quoted-insert] followed by another keystroke allows you to insert the key even if
  17931. it isn't bound to self-insert.  An octal number can be supplied in place
  17932. of another key to insert the octal number's ASCII representation.
  17933.  
  17934. \[hexl-insert-hex-char] will insert a given hexadecimal value (if it is between 0 and 0xFF)
  17935. into the buffer at the current point.
  17936.  
  17937. \[hexl-insert-octal-char] will insert a given octal value (if it is between 0 and 0377)
  17938. into the buffer at the current point.
  17939.  
  17940. \[hexl-insert-decimal-char] will insert a given decimal value (if it is between 0 and 255)
  17941. into the buffer at the current point.
  17942.  
  17943. \[hexl-mode-exit] will exit hexl-mode.
  17944.  
  17945. Note: saving the file with any of the usual Emacs commands
  17946. will actually convert it back to binary format while saving.
  17947.  
  17948. You can use \[hexl-find-file] to visit a file in hexl-mode.
  17949.  
  17950. \[describe-bindings] for advanced commands.
  17951. Fhexl-find-file
  17952. Edit file FILENAME in hexl-mode.
  17953. Switch to a buffer visiting file FILENAME, creating one in none exists.
  17954. Vhypropos-show-brief-docs
  17955. *If non-nil, `hyper-apropos' will display some documentation in the
  17956. "*Hyper Apropos*" buffer.  Setting this to nil will speed up searches.
  17957. Fhyper-apropos
  17958. Display lists of functions and variables matching REGEXP
  17959. in buffer "*Hyper Apropos*".  If optional prefix arg is given, then the value
  17960. of `hypropos-programming-apropos' is toggled for this search.
  17961. See also `hyper-apropos-mode'.
  17962. Fhyper-describe-variable
  17963. Hypertext drop-in replacement for `describe-variable'.
  17964. See also `hyper-apropos' and `hyper-describe-function'.
  17965. Fhyper-describe-function
  17966. Hypertext replacement for `describe-function'.  Unlike `describe-function'
  17967. in that the symbol under the cursor is the default if it is a function.
  17968. See also `hyper-apropos' and `hyper-describe-variable'.
  17969. Fhypropos-set-variable
  17970. Interactively set the variable on the current line.
  17971. Finfo
  17972. Enter Info, the documentation browser.
  17973. Optional argument FILE specifies the file to examine;
  17974. the default is the top-level directory of Info.
  17975.  
  17976. In interactive use, a prefix argument directs this command
  17977. to read a file name from the minibuffer.
  17978. FInfo-query
  17979. Enter Info, the documentation browser.  Prompt for name of Info file.
  17980. FInfo-emacs-command
  17981. Look up an Emacs command in the Emacs manual in the Info system.
  17982. This command is designed to be used whether you are already in Info or not.
  17983. FInfo-goto-emacs-command-node
  17984. Look up an Emacs command in the Emacs manual in the Info system.
  17985. This command is designed to be used whether you are already in Info or not.
  17986. FInfo-goto-emacs-key-command-node
  17987. Look up an Emacs key sequence in the Emacs manual in the Info system.
  17988. This command is designed to be used whether you are already in Info or not.
  17989. FInfo-emacs-key
  17990. Look up an Emacs key sequence in the Emacs manual in the Info system.
  17991. This command is designed to be used whether you are already in Info or not.
  17992. FInfo-elisp-ref
  17993. Look up an Emacs Lisp function in the Elisp manual in the Info system.
  17994. This command is designed to be used whether you are already in Info or not.
  17995. FInfo-tagify
  17996. Create or update Info-file tag table in current buffer.
  17997. FInfo-split
  17998. Split an info file into an indirect file plus bounded-size subfiles.
  17999. Each subfile will be up to 50,000 characters plus one node.
  18000.  
  18001. To use this command, first visit a large Info file that has a tag
  18002. table.  The buffer is modified into a (small) indirect info file which
  18003. should be saved in place of the original visited file.
  18004.  
  18005. The subfiles are written in the same directory the original file is
  18006. in, with names generated by appending `-' and a number to the original
  18007. file name.  The indirect file still functions as an Info file, but it
  18008. contains just the tag table and a directory of subfiles.
  18009. FInfo-validate
  18010. Check current buffer for validity as an Info file.
  18011. Check that every node pointer points to an existing node.
  18012. Fbatch-info-validate
  18013. Runs `Info-validate' on the files remaining on the command line.
  18014. Must be used only with -batch, and kills Emacs on completion.
  18015. Each file will be processed even if an error occurred previously.
  18016. For example, invoke "emacs -batch -f batch-info-validate $info/ ~/*.info"
  18017. Vispell-personal-dictionary
  18018. *File name of your personal spelling dictionary, or nil.
  18019. If nil, the default personal dictionary, "~/.ispell_DICTNAME" is used,
  18020. where DICTNAME is the name of your default dictionary.
  18021. Vispell-dictionary-alist
  18022. An alist of dictionaries and their associated parameters.
  18023.  
  18024. Each element of this list is also a list:
  18025.  
  18026. (DICTIONARY-NAME CASECHARS NOT-CASECHARS OTHERCHARS MANY-OTHERCHARS-P
  18027.         ISPELL-ARGS EXTENDED-CHARACTER-MODE)
  18028.  
  18029. DICTIONARY-NAME is a possible value of variable `ispell-dictionary', nil
  18030. means the default dictionary.
  18031.  
  18032. CASECHARS is a regular expression of valid characters that comprise a
  18033. word.
  18034.  
  18035. NOT-CASECHARS is the opposite regexp of CASECHARS.
  18036.  
  18037. OTHERCHARS is a regular expression of other characters that are valid
  18038. in word constructs.  Otherchars cannot be adjacent to each other in a
  18039. word, nor can they begin or end a word.  This implies we can't check
  18040. "Stevens'" as a correct possessive and other correct formations.
  18041.  
  18042. Hint: regexp syntax requires the hyphen to be declared first here.
  18043.  
  18044. MANY-OTHERCHARS-P is non-nil if many otherchars are to be allowed in a
  18045. word instead of only one.
  18046.  
  18047. ISPELL-ARGS is a list of additional arguments passed to the ispell
  18048. subprocess.
  18049.  
  18050. EXTENDED-CHARACTER-MODE should be used when dictionaries are used which
  18051. have been configured in an Ispell affix file.  (For example, umlauts
  18052. can be encoded as \"a, a\", "a, ...)  Defaults are ~tex and ~nroff
  18053. in English.  This has the same effect as the command-line `-T' option.
  18054. The buffer Major Mode controls Ispell's parsing in tex or nroff mode,
  18055. but the dictionary can control the extended character mode.
  18056. Both defaults can be overruled in a buffer-local fashion. See
  18057. `ispell-parsing-keyword' for details on this.
  18058.  
  18059. Note that the CASECHARS and OTHERCHARS slots of the alist should
  18060. contain the same character set as casechars and otherchars in the
  18061. language.aff file (e.g., english.aff).
  18062. Vispell-menu-map
  18063. Key map for ispell menu
  18064. Vispell-menu-lucid
  18065. Spelling menu for Lucid Emacs.
  18066. Vispell-local-pdict
  18067. A buffer local variable containing the current personal dictionary.
  18068. If non-nil, the value must be a string, which is a file name.
  18069.  
  18070. If you specify a personal dictionary for the current buffer which is
  18071. different from the current personal dictionary, the effect is similar
  18072. to calling \[ispell-change-dictionary].  This variable is automatically
  18073. set when defined in the file with either `ispell-pdict-keyword' or the
  18074. local variable syntax.
  18075. Fispell-word
  18076. Check spelling of word under or before the cursor.
  18077. If the word is not found in dictionary, display possible corrections
  18078. in a window allowing you to choose one.
  18079.  
  18080. With a prefix argument (or if CONTINUE is non-nil),
  18081. resume interrupted spell-checking of a buffer or region.
  18082.  
  18083. If optional argument FOLLOWING is non-nil or if `ispell-following-word'
  18084. is non-nil when called interactively, then the following word
  18085. (rather than preceding) is checked when the cursor is not over a word.
  18086. When the optional argument QUIETLY is non-nil or `ispell-quietly' is non-nil
  18087. when called interactively, non-corrective messages are suppressed.
  18088.  
  18089. Word syntax described by `ispell-dictionary-alist' (which see).
  18090.  
  18091. This will check or reload the dictionary.  Use \[ispell-change-dictionary]
  18092. or \[ispell-region] to update the Ispell process.
  18093. Fispell-help
  18094. Display a list of the options available when a misspelling is encountered.
  18095.  
  18096. Selections are:
  18097.  
  18098. DIGIT: Replace the word with a digit offered in the *Choices* buffer.
  18099. SPC:   Accept word this time.
  18100. `i':   Accept word and insert into private dictionary.
  18101. `a':   Accept word for this session.
  18102. `A':   Accept word and place in `buffer-local dictionary'.
  18103. `r':   Replace word with typed-in value.  Rechecked.
  18104. `R':   Replace word with typed-in value. Query-replaced in buffer. Rechecked.
  18105. `?':   Show these commands.
  18106. `x':   Exit spelling buffer.  Move cursor to original point.
  18107. `X':   Exit spelling buffer.  Leaves cursor at the current point, and permits
  18108.         the aborted check to be completed later.
  18109. `q':   Quit spelling session (Kills ispell process).
  18110. `l':   Look up typed-in replacement in alternate dictionary.  Wildcards okay.
  18111. `u':   Like `i', but the word is lower-cased first.
  18112. `m':   Like `i', but allows one to include dictionary completion information.
  18113. `C-l':  redraws screen
  18114. `C-r':  recursive edit
  18115. `C-z':  suspend emacs or iconify frame
  18116. Fispell-kill-ispell
  18117. Kill current Ispell process (so that you may start a fresh one).
  18118. With NO-ERROR, just return non-nil if there was no Ispell running.
  18119. Fispell-change-dictionary
  18120. Change `ispell-dictionary' (q.v.) and kill old Ispell process.
  18121. A new one will be started as soon as necessary.
  18122.  
  18123. By just answering RET you can find out what the current dictionary is.
  18124.  
  18125. With prefix argument, set the default directory.
  18126. Fispell-region
  18127. Interactively check a region for spelling errors.
  18128. Fispell-buffer
  18129. Check the current buffer for spelling errors interactively.
  18130. Fispell-complete-word
  18131. Look up word before or under point in dictionary (see lookup-words command)
  18132. and try to complete it.  If optional INTERIOR-FRAG is non-nil then the word
  18133. may be a character sequence inside of a word.
  18134.  
  18135. Standard ispell choices are then available.
  18136. Fispell-complete-word-interior-frag
  18137. Completes word matching character sequence inside a word.
  18138. Fispell-minor-mode
  18139. Toggle Ispell minor mode.
  18140. With prefix arg, turn Ispell minor mode on iff arg is positive.
  18141.  
  18142. In Ispell minor mode, pressing SPC or RET
  18143. warns you if the previous word is incorrectly spelled.
  18144. Fispell-message
  18145. Check the spelling of a mail message or news post.
  18146. Don't check spelling of message headers except the Subject field.
  18147. Don't check included messages.
  18148.  
  18149. To abort spell checking of a message REGION and send the message anyway,
  18150. use the `x' or `q' command.  (Any subsequent regions will be checked.)
  18151. The `X' command aborts the message send so that you can edit the buffer.
  18152.  
  18153. To spell-check whenever a message is sent, include the appropriate lines
  18154. in your .emacs file:
  18155.    (add-hook 'news-inews-hook 'ispell-message)
  18156.    (add-hook 'mail-send-hook  'ispell-message)
  18157.    (add-hook 'mh-before-send-letter-hook 'ispell-message)
  18158.  
  18159. You can bind this to the key C-c i in GNUS or mail by adding to
  18160. `news-reply-mode-hook' or `mail-mode-hook' the following lambda expression:
  18161.    (function (lambda () (local-set-key "\C-ci" 'ispell-message)))
  18162. Fjka-compr-load
  18163. Documented as original.
  18164. Ftoggle-auto-compression
  18165. Toggle automatic file compression and decompression.
  18166. With prefix argument ARG, turn auto compression on if positive, else off.
  18167. Returns the new status of auto compression (non-nil means on).
  18168. Fjka-compr-install
  18169. Install jka-compr.
  18170. This adds entries to `file-name-handler-alist' and `auto-mode-alist'
  18171. and `inhibit-first-line-modes-suffixes'.
  18172. Flazy-lock-mode
  18173. Toggle Lazy Lock mode.
  18174. With arg, turn Lazy Lock mode on if and only if arg is positive and the buffer
  18175. is at least `lazy-lock-minimum-size' characters long.
  18176.  
  18177. When Lazy Lock mode is enabled, fontification is demand-driven and stealthy:
  18178.  
  18179.  - Fontification occurs in visible parts of buffers when necessary.
  18180.    Occurs if there is no input after pausing for `lazy-lock-continuity-time'.
  18181.  
  18182.  - Fontification occurs in invisible parts when Emacs has been idle.
  18183.    Occurs if there is no input after pausing for `lazy-lock-stealth-time'.
  18184.  
  18185. If `lazy-lock-hide-invisible' is non-nil, text is not displayed until it is
  18186. fontified, otherwise it is displayed in `lazy-lock-invisible-foreground'.
  18187.  
  18188. See also variables `lazy-lock-walk-windows', `lazy-lock-stealth-lines',
  18189. `lazy-lock-stealth-nice' and `lazy-lock-ignore-commands'.
  18190.  
  18191. Use \[lazy-lock-submit-bug-report] to send bug reports or feedback.
  18192. Fturn-on-lazy-lock
  18193. Unconditionally turn on Lazy Lock mode.
  18194. Vledit-save-files
  18195. *Non-nil means Ledit should save files before transferring to Lisp.
  18196. Vledit-go-to-lisp-string
  18197. *Shell commands to execute to resume Lisp job.
  18198. Vledit-go-to-liszt-string
  18199. *Shell commands to execute to resume Lisp compiler job.
  18200. Fledit-mode
  18201. \<ledit-mode-map>Major mode for editing text and stuffing it to a Lisp job.
  18202. Like Lisp mode, plus these special commands:
  18203.   \[ledit-save-defun]    -- record defun at or after point
  18204.        for later transmission to Lisp job.
  18205.   \[ledit-save-region] -- record region for later transmission to Lisp job.
  18206.   \[ledit-go-to-lisp] -- transfer to Lisp job and transmit saved text.
  18207.   \[ledit-go-to-liszt] -- transfer to Liszt (Lisp compiler) job
  18208.        and transmit saved text.
  18209. \{ledit-mode-map}
  18210. To make Lisp mode automatically change to Ledit mode,
  18211. do (setq lisp-mode-hook 'ledit-from-lisp-mode)
  18212. Vlpr-switches
  18213. *List of strings to pass as extra switch args to lpr when it is invoked.
  18214. Vlpr-command
  18215. *Shell command for printing a file
  18216. Flpr-buffer
  18217. Print buffer contents as with Unix command `lpr'.
  18218. `lpr-switches' is a list of extra switches (strings) to pass to lpr.
  18219. Fprint-buffer
  18220. Print buffer contents as with Unix command `lpr -p'.
  18221. `lpr-switches' is a list of extra switches (strings) to pass to lpr.
  18222. Flpr-region
  18223. Print region contents as with Unix command `lpr'.
  18224. `lpr-switches' is a list of extra switches (strings) to pass to lpr.
  18225. Fprint-region
  18226. Print region contents as with Unix command `lpr -p'.
  18227. `lpr-switches' is a list of extra switches (strings) to pass to lpr.
  18228. Fmc-deactivate-passwd
  18229. *Deactivates the passphrase.
  18230. Fmc-encrypt-message
  18231. *Encrypt the message to RECIPIENTS using the given encryption SCHEME.
  18232. RECIPIENTS is a comma separated string. If SCHEME is nil, use the value
  18233. of `mc-default-scheme'. Returns t on success, nil otherwise.
  18234.  
  18235. By default, this function is bound to `C-c e' in mail composing modes.
  18236. Fmc-decrypt-message
  18237. *Decrypt whatever message is in the current buffer.
  18238. Returns a pair (SUCCEEDED . VERIFIED) where SUCCEEDED is t if the encryption
  18239. succeeded and VERIFIED is t if it had a valid signature.
  18240.  
  18241. By default, this function is bound to `C-c d' in reading modes.
  18242. Fmc-sign-message
  18243. *Clear sign the message.
  18244. With one prefix arg, prompts for private key to use, with two prefix args,
  18245. also prompts for encryption scheme to use.
  18246.  
  18247. By default, this function is bound to `C-c s' in composition modes.
  18248. Fmc-verify-signature
  18249. *Verify the signature of the signed message in the current buffer.
  18250. Show the result as a message in the minibuffer. Returns t if the signature
  18251. is verified.
  18252.  
  18253. By default, this function is bound to `C-c v' in reading modes.
  18254. Fmc-insert-public-key
  18255. *Insert your public key at the end of the current buffer.
  18256. With one prefix arg, prompts for user id to use. With two prefix
  18257. args, prompts for encryption scheme.
  18258. Fmc-snarf-keys
  18259. *Add the first public key in the buffer to your keyring.
  18260. TODO: add ALL the keys in the buffer.
  18261. Fmc-rmail-verify-signature
  18262. *Verify the signature in the current message.
  18263. Fmc-rmail-decrypt-message
  18264. *Decrypt the contents of this message
  18265. Fmc-vm-verify-signature
  18266. *Verify the signature in the current VM message
  18267. Fmc-vm-decrypt-message
  18268. *Decrypt the contents of the current VM message
  18269. Fmc-mh-decrypt-message
  18270. *Decrypt the contents of the current MH message in the show buffer.
  18271. With prefix arg, decrypt the message on disk as well.
  18272. Fmc-mh-verify-signature
  18273. *Verify the signature in the current MH message.
  18274. Fmake-command-summary
  18275. Make a summary of current key bindings in the buffer *Summary*.
  18276. Previous contents of that buffer are killed first.
  18277. Fmanual-entry
  18278. Display the Unix manual entry (or entries) for TOPIC.
  18279. If prefix arg is given, modify the search according to the value:
  18280.   2 = complement default exact matching of the TOPIC name;
  18281.       exact matching default is specified by `Manual-match-topic-exactly'
  18282.   3 = force a search of the unformatted man directories
  18283.   4 = both 2 and 3
  18284. The manual entries are searched according to the variable
  18285. Manual-directory-list, which should be a list of directories.  If
  18286. Manual-directory-list is nil, \[Manual-directory-list-init] is
  18287. invoked to create this list from the MANPATH environment variable.
  18288. See the variable Manual-topic-buffer which controls how the buffer
  18289. is named.  See also the variables Manual-match-topic-exactly,
  18290. Manual-query-multiple-pages, and Manual-buffer-view-mode.
  18291. Vparen-mode
  18292. *Sets the style of parenthesis highlighting.
  18293. Valid values are `blink-paren', `paren', and `sexp'.
  18294.   blink-paren    causes the matching paren to blink.
  18295.   paren        causes the matching paren to be highlighted but not to blink.
  18296.   sexp        whole expression enclosed by the local paren at its mate.
  18297.   nested    (not released yet) use variable shading to see the
  18298.         nesting of an expression.  Also groks regular expressions
  18299.         and shell quoting.
  18300.  
  18301. This variable is global by default, but you can make it buffer-local and
  18302. highlight parentheses differrently in different major modes.
  18303. Fparen-set-mode
  18304. Cycles through possible values for `paren-mode', force off with negative arg.
  18305. When called from lisp, a symbolic value for `paren-mode' can be pased directly.
  18306. See also `paren-mode' and `paren-highlight'.
  18307. Fblink-paren
  18308. Obsolete.  Use `paren-set-mode' instead.
  18309. Fpending-delete-on
  18310. Turn on pending delete.
  18311. When it is ON, typed text replaces the selection if the selection is active.
  18312. When it is OFF, typed text is just inserted at point.
  18313. Fpending-delete-off
  18314. Turn off pending delete.
  18315. When it is ON, typed text replaces the selection if the selection is active.
  18316. When it is OFF, typed text is just inserted at point.
  18317. Fpending-delete
  18318. Toggle automatic deletion of the selected region.
  18319. With a positive argument, turns it on.
  18320. With a non-positive argument, turns it off.
  18321. When active, typed text replaces the selection.
  18322. Fps-print-buffer
  18323. Generate and print a PostScript image of the buffer.
  18324.  
  18325. When called with a numeric prefix argument (C-u), prompts the user for
  18326. the name of a file to save the PostScript image in, instead of sending
  18327. it to the printer.
  18328.  
  18329. More specifically, the FILENAME argument is treated as follows: if it
  18330. is nil, send the image to the printer.  If FILENAME is a string, save
  18331. the PostScript image in a file with that name.  If FILENAME is a
  18332. number, prompt the user for the name of the file to save in.
  18333. Fps-print-buffer-with-faces
  18334. Generate and print a PostScript image of the buffer.
  18335.  
  18336. Like `ps-print-buffer', but includes font, color, and underline
  18337. information in the generated image.
  18338. Fps-print-region
  18339. Generate and print a PostScript image of the region.
  18340.  
  18341. Like `ps-print-buffer', but prints just the current region.
  18342. Fps-print-region-with-faces
  18343. Generate and print a PostScript image of the region.
  18344.  
  18345. Like `ps-print-region', but includes font, color, and underline
  18346. information in the generated image.
  18347. Fps-spool-buffer
  18348. Generate and spool a PostScript image of the buffer.
  18349.  
  18350. Like `ps-print-buffer' except that the PostScript image is saved in a
  18351. local buffer to be sent to the printer later.
  18352.  
  18353. Use the command `ps-despool' to send the spooled images to the printer.
  18354. Fps-spool-buffer-with-faces
  18355. Generate and spool a PostScript image of the buffer.
  18356.  
  18357. Like `ps-spool-buffer', but includes font, color, and underline
  18358. information in the generated image.
  18359.  
  18360. Use the command `ps-despool' to send the spooled images to the printer.
  18361. Fps-spool-region
  18362. Generate a PostScript image of the region and spool locally.
  18363.  
  18364. Like `ps-spool-buffer', but spools just the current region.
  18365.  
  18366. Use the command `ps-despool' to send the spooled images to the printer.
  18367. Fps-spool-region-with-faces
  18368. Generate a PostScript image of the region and spool locally.
  18369.  
  18370. Like `ps-spool-region', but includes font, color, and underline
  18371. information in the generated image.
  18372.  
  18373. Use the command `ps-despool' to send the spooled images to the printer.
  18374. Fps-despool
  18375. Send the spooled PostScript to the printer.
  18376.  
  18377. When called with a numeric prefix argument (C-u), prompt the user for
  18378. the name of a file to save the spooled PostScript in, instead of sending
  18379. it to the printer.
  18380.  
  18381. More specifically, the FILENAME argument is treated as follows: if it
  18382. is nil, send the image to the printer.  If FILENAME is a string, save
  18383. the PostScript image in a file with that name.  If FILENAME is a
  18384. number, prompt the user for the name of the file to save in.
  18385. Fremote-compile
  18386. Compile the the current buffer's directory on HOST.  Log in as USER.
  18387. See \[compile].
  18388. Fserver-start
  18389. Allow this Emacs process to be a server for client processes.
  18390. This starts a server communications subprocess through which
  18391. client "editors" can send your editing commands to this Emacs job.
  18392. To use the server, set up the program `emacsclient' in the
  18393. Emacs distribution as your standard "editor".
  18394.  
  18395. Prefix arg means just kill any existing server communications subprocess.
  18396. Finstall-shell-fonts
  18397. Decorate the current interaction buffer with fonts.
  18398. This uses the faces called `shell-prompt', `shell-input' and `shell-output';
  18399. you can alter the graphical attributes of those with the normal
  18400. face-manipulation functions.
  18401. Ftar-mode
  18402. Major mode for viewing a tar file as a dired-like listing of its contents.
  18403. You can move around using the usual cursor motion commands. 
  18404. Letters no longer insert themselves.
  18405. Type 'e' to pull a file out of the tar file and into its own buffer.
  18406. Type 'c' to copy an entry from the tar file into another file on disk.
  18407.  
  18408. If you edit a sub-file of this archive (as with the 'e' command) and 
  18409. save it with Control-X Control-S, the contents of that buffer will be 
  18410. saved back into the tar-file buffer; in this way you can edit a file 
  18411. inside of a tar archive without extracting it and re-archiving it.
  18412.  
  18413. See also: variables tar-update-datestamp and tar-anal-blocksize.
  18414. \{tar-mode-map}
  18415. Fterminal-emulator
  18416. Under a display-terminal emulator in BUFFER, run PROGRAM on arguments ARGS.
  18417. ARGS is a list of argument-strings.  Remaining arguments are WIDTH and HEIGHT.
  18418. BUFFER's contents are made an image of the display generated by that program,
  18419. and any input typed when BUFFER is the current Emacs buffer is sent to that
  18420. program an keyboard input.
  18421.  
  18422. Interactively, BUFFER defaults to "*terminal*" and PROGRAM and ARGS
  18423. are parsed from an input-string using your usual shell.
  18424. WIDTH and HEIGHT are determined from the size of the current window
  18425. -- WIDTH will be one less than the window's width, HEIGHT will be its height.
  18426.  
  18427. To switch buffers and leave the emulator, or to give commands
  18428. to the emulator itself (as opposed to the program running under it),
  18429. type Control-^.  The following character is an emulator command.
  18430. Type Control-^ twice to send it to the subprogram.
  18431. This escape character may be changed using the variable `terminal-escape-char'.
  18432.  
  18433. `Meta' characters may not currently be sent through the terminal emulator.
  18434.  
  18435. Here is a list of some of the variables which control the behaviour
  18436. of the emulator -- see their documentation for more information:
  18437. terminal-escape-char, terminal-scrolling, terminal-more-processing,
  18438. terminal-redisplay-interval.
  18439.  
  18440. This function calls the value of terminal-mode-hook if that exists
  18441. and is non-nil after the terminal buffer has been set up and the
  18442. subprocess started.
  18443.  
  18444. Presently with `termcap' only; if somebody sends us code to make this
  18445. work with `terminfo' we will try to use it.
  18446. Ftexinfo-format-buffer
  18447. Process the current buffer as texinfo code, into an Info file.
  18448. The Info file output is generated in a buffer visiting the Info file
  18449. names specified in the @setfilename command.
  18450.  
  18451. Non-nil argument (prefix, if interactive) means don't make tag table
  18452. and don't split the file if large.  You can use Info-tagify and
  18453. Info-split to do these manually.
  18454. Ftexinfo-format-region
  18455. Convert the current region of the Texinfo file to Info format.
  18456. This lets you see what that part of the file will look like in Info.
  18457. The command is bound to \[texinfo-format-region].  The text that is
  18458. converted to Info is stored in a temporary buffer.
  18459. Fbatch-texinfo-format
  18460. Runs  texinfo-format-buffer  on the files remaining on the command line.
  18461. Must be used only with -batch, and kills emacs on completion.
  18462. Each file will be processed even if an error occurred previously.
  18463. For example, invoke
  18464.   "emacs -batch -funcall batch-texinfo-format $docs/ ~/*.texinfo".
  18465. Ftexinfo-update-node
  18466. Without any prefix argument, update the node in which point is located.
  18467. Non-nil argument (prefix, if interactive) means update the nodes in the
  18468. marked region.
  18469.  
  18470. The functions for creating or updating nodes and menus, and their
  18471. keybindings, are:
  18472.  
  18473.     texinfo-update-node (&optional region-p)    \[texinfo-update-node]
  18474.     texinfo-every-node-update ()                \[texinfo-every-node-update]
  18475.     texinfo-sequential-node-update (&optional region-p)
  18476.  
  18477.     texinfo-make-menu (&optional region-p)      \[texinfo-make-menu]
  18478.     texinfo-all-menus-update ()                 \[texinfo-all-menus-update]
  18479.     texinfo-master-menu ()
  18480.  
  18481.     texinfo-indent-menu-description (column &optional region-p)
  18482.  
  18483. The `texinfo-column-for-description' variable specifies the column to
  18484. which menu descriptions are indented. Its default value is 32.
  18485. Ftexinfo-every-node-update
  18486. Update every node in a Texinfo file.
  18487. Ftexinfo-sequential-node-update
  18488. Update one node (or many) in a Texinfo file with sequential pointers.
  18489.  
  18490. This function causes the `Next' or `Previous' pointer to point to the
  18491. immediately preceding or following node, even if it is at a higher or
  18492. lower hierarchical level in the document.  Continually pressing `n' or
  18493. `p' takes you straight through the file.
  18494.  
  18495. Without any prefix argument, update the node in which point is located.
  18496. Non-nil argument (prefix, if interactive) means update the nodes in the
  18497. marked region.
  18498.  
  18499. This command makes it awkward to navigate among sections and
  18500. subsections; it should be used only for those documents that are meant
  18501. to be read like a novel rather than a reference, and for which the
  18502. Info `g*' command is inadequate.
  18503. Ftime-stamp
  18504. Update the time stamp string in the buffer.
  18505. Only does its thing if the variable  time-stamp-active  is non-nil.
  18506. Typically used on  write-file-hooks  for automatic time-stamping.
  18507. The format of the time stamp is determined by the variable
  18508. time-stamp-format.  The first  time-stamp-line-limit  lines of the
  18509. buffer (normally 8) are searched for the time stamp template,
  18510. and if it is found, a new time stamp is written into it.
  18511. Vdisplay-time-day-and-date
  18512. *Non-nil means \[display-time] should display day and date as well as time.
  18513. Fdisplay-time
  18514. Display current time, load level, and mail flag in mode line of each buffer.
  18515. Updates automatically every minute.
  18516. If `display-time-day-and-date' is non-nil, the current day and date
  18517. are displayed as well.
  18518. After each update, `display-time-hook' is run with `run-hooks'.
  18519. If `display-time-echo-area' is non-nil, the time is displayed in the
  18520. echo area instead of in the mode-line.
  18521. Funderline-region
  18522. Underline all nonblank characters in the region.
  18523. Works by overstriking underscores.
  18524. Called from program, takes two arguments START and END
  18525. which specify the range to operate on.
  18526. Fununderline-region
  18527. Remove all underlining (overstruck underscores) in the region.
  18528. Called from program, takes two arguments START and END
  18529. which specify the range to operate on.
  18530. Funoverstrike-region
  18531. Remove all overstriking (character-backspace-character) in the region.
  18532. Called from program, takes two arguments START and END which specify the
  18533. range to operate on.
  18534. Foverstrike-region
  18535. Overstrike (character-backspace-character) all nonblank characters in
  18536. the region. Called from program, takes two arguments START and END which
  18537. specify the range to operate on.
  18538. Fununderline-and-unoverstrike-region
  18539. Remove underlining and overstriking in the region.  Called from a program,
  18540. takes two arguments START and END which specify the range to operate on.
  18541. Vcopyright-do-not-disturb
  18542. *If non-nil, the existing copyright holder is checked against this regexp.
  18543. If it does not match, then a new copyright line is added with the copyright
  18544. holder set to the value of `copyright-whoami'.
  18545. Vcopyright-whoami
  18546. *A string containing the name of the owner of new copyright notices.
  18547. Vcopyright-notice-file
  18548. *If non-nil, replace copying notices with this file.
  18549. Fupdate-copyright
  18550. Update the copyright notice at the beginning of the buffer
  18551. to indicate the current year.  If optional arg REPLACE is given
  18552. (interactively, with prefix arg) replace the years in the notice
  18553. rather than adding the current year after them.
  18554. If `copyright-notice-file' is set, the copying permissions following the
  18555. copyright are replaced as well.
  18556.  
  18557. If optional third argument ASK is non-nil, the user is prompted for whether
  18558. or not to update the copyright.  If optional fourth argument ASK-YEAR is
  18559. non-nil, the user is prompted for whether or not to replace the year rather
  18560. than adding to it.
  18561. Fask-to-update-copyright
  18562. If the current buffer contains a copyright notice that is out of date,
  18563. ask the user if it should be updated with `update-copyright' (which see).
  18564. Put this on write-file-hooks.
  18565. Vvc-checkin-hook
  18566. *List of functions called after a checkin is done.  See `run-hooks'.
  18567. Fvc-file-status
  18568. Display the current status of the file being visited.
  18569. Currently, this is only defined for CVS.  The information provided in the
  18570. modeline is generally sufficient for RCS and SCCS.
  18571. Fvc-next-action
  18572. Do the next logical checkin or checkout operation on the current file.
  18573.  
  18574. For RCS and SCCS files:
  18575.    If the file is not already registered, this registers it for version
  18576. control and then retrieves a writable, locked copy for editing.
  18577.    If the file is registered and not locked by anyone, this checks out
  18578. a writable and locked file ready for editing.
  18579.    If the file is checked out and locked by the calling user, this
  18580. first checks to see if the file has changed since checkout.  If not,
  18581. it performs a revert.
  18582.    If the file has been changed, this pops up a buffer for entry
  18583. of a log message; when the message has been entered, it checks in the
  18584. resulting changes along with the log message as change commentary.  If
  18585. the variable `vc-keep-workfiles' is non-nil (which is its default), a
  18586. read-only copy of the changed file is left in place afterwards.
  18587.    If the file is registered and locked by someone else, you are given
  18588. the option to steal the lock.
  18589.  
  18590. For CVS files:
  18591.    If the file is not already registered, this registers it for version
  18592. control.  This does a "cvs add", but no "cvs commit".
  18593.    If the file is added but not committed, it is committed.
  18594.    If the file has not been changed, neither in your working area or
  18595. in the repository, a message is printed and nothing is done.
  18596.    If your working file is changed, but the repository file is
  18597. unchanged, this pops up a buffer for entry of a log message; when the
  18598. message has been entered, it checks in the resulting changes along
  18599. with the logmessage as change commentary.  A writable file is retained.
  18600.    If the repository file is changed, you are asked if you want to
  18601. merge in the changes into your working copy.
  18602.  
  18603. The following is true regardless of which version control system you
  18604. are using:
  18605.  
  18606.    If you call this from within a VC dired buffer with no files marked,
  18607. it will operate on the file in the current line.
  18608.    If you call this from within a VC dired buffer, and one or more
  18609. files are marked, it will accept a log message and then operate on
  18610. each one.  The log message will be used as a comment for any register
  18611. or checkin operations, but ignored when doing checkouts.  Attempted
  18612. lock steals will raise an error.
  18613.  
  18614.    For checkin, a prefix argument lets you specify the version number to use.
  18615. Fvc-register
  18616. Register the current file into your version-control system.
  18617. Fvc-diff
  18618. Display diffs between file versions.
  18619. Normally this compares the current file and buffer with the most recent 
  18620. checked in version of that file.  This uses no arguments.
  18621. With a prefix argument, it reads the file name to use
  18622. and two version designators specifying which versions to compare.
  18623. Fvc-version-diff
  18624. For FILE, report diffs between two stored versions REL1 and REL2 of it.
  18625. If FILE is a directory, generate diffs between versions for all registered
  18626. files in or below it.
  18627. Fvc-version-other-window
  18628. Visit version REV of the current buffer in another window.
  18629. If the current buffer is named `F', the version is named `F.~REV~'.
  18630. If `F.~REV~' already exists, it is used instead of being re-created.
  18631. Fvc-insert-headers
  18632. Insert headers in a file for use with your version-control system.
  18633. Headers desired are inserted at the start of the buffer, and are pulled from
  18634. the variable `vc-header-alist'.
  18635. Fvc-directory
  18636. Show version-control status of all files in the directory DIR.
  18637. If the second argument VERBOSE is non-nil, show all files;
  18638. otherwise show only files that current locked in the version control system.
  18639. Interactively, supply a prefix arg to make VERBOSE non-nil.
  18640.  
  18641. If the optional third argument NESTED is non-nil,
  18642. scan the entire tree of subdirectories of the current directory.
  18643. Fvc-create-snapshot
  18644. Make a snapshot called NAME.
  18645. The snapshot is made from all registered files at or below the current
  18646. directory.  For each file, the version level of its latest
  18647. version becomes part of the named configuration.
  18648. Fvc-retrieve-snapshot
  18649. Retrieve the snapshot called NAME.
  18650. This function fails if any files are locked at or below the current directory
  18651. Otherwise, all registered files are checked out (unlocked) at their version
  18652. levels in the snapshot.
  18653. Fvc-print-log
  18654. List the change log of the current buffer in a window.
  18655. Fvc-revert-buffer
  18656. Revert the current buffer's file back to the latest checked-in version.
  18657. This asks for confirmation if the buffer contents are not identical
  18658. to that version.
  18659. If the back-end is CVS, this will give you the most recent revision of
  18660. the file on the branch you are editing.
  18661. Fvc-cancel-version
  18662. Get rid of most recently checked in version of this file.
  18663. A prefix argument means do not revert the buffer afterwards.
  18664. Fvc-rename-file
  18665. Rename file OLD to NEW, and rename its master file likewise.
  18666. Fvc-update-change-log
  18667. Find change log file and add entries from recent RCS logs.
  18668. The mark is left at the end of the text prepended to the change log.
  18669. With prefix arg of C-u, only find log entries for the current buffer's file.
  18670. With any numeric prefix arg, find log entries for all files currently visited.
  18671. Otherwise, find log entries for all registered files in the default directory.
  18672. From a program, any arguments are passed to the `rcs2log' script.
  18673. Fwebster
  18674. Look up a word in the Webster's dictionary.
  18675. Open a network login connection to a webster host if necessary.
  18676. Communication with host is recorded in a buffer *webster*.
  18677. Fwebster-endings
  18678. Look up endings for a word in the Webster's dictionary.
  18679. Open a network login connection to a webster host if necessary.
  18680. Communication with host is recorded in a buffer *webster*.
  18681. Fwebster-spell
  18682. Look spelling for a word in the Webster's dictionary.
  18683. Open a network login connection to a webster host if necessary.
  18684. Communication with host is recorded in a buffer *webster*.
  18685. Vscheme-program-name
  18686. *Program invoked by the `run-scheme' command.
  18687. Vscheme-band-name
  18688. *Band loaded by the `run-scheme' command.
  18689. Vscheme-program-arguments
  18690. *Arguments passed to the Scheme program by the `run-scheme' command.
  18691. Frun-scheme
  18692. Run an inferior Scheme process.
  18693. Output goes to the buffer `*scheme*'.
  18694. With argument, asks for a command line.
  18695. Fcvs-update
  18696. Run a 'cvs update' in the current working directory. Feed the
  18697. output to a *cvs* buffer and run cvs-mode on it.
  18698. If optional prefix argument LOCAL is non-nil, 'cvs update -l' is run.
  18699. Fcvs-update-other-window
  18700. Run a 'cvs update' in the current working directory. Feed the
  18701. output to a *cvs* buffer, display it in the other window, and run
  18702. cvs-mode on it.
  18703.  
  18704. If optional prefix argument LOCAL is non-nil, 'cvs update -l' is run.
  18705. Fdescribe-buffer-case-table
  18706. Describe the case table of the current buffer.
  18707. Fdebug
  18708. Enter debugger.  To return, type \<debugger-mode-map>`\[debugger-continue]'.
  18709. Arguments are mainly for use when this is called
  18710.  from the internals of the evaluator.
  18711. You may call with no args, or you may
  18712.  pass nil as the first arg and any other args you like.
  18713.  In that case, the list of args after the first will 
  18714.  be printed into the backtrace buffer.
  18715. Fdebug-on-entry
  18716. Request FUNCTION to invoke debugger each time it is called.
  18717. If you tell the debugger to continue, FUNCTION's execution proceeds.
  18718. This works by modifying the definition of FUNCTION,
  18719. which must be written in Lisp, not predefined.
  18720. Use \[cancel-debug-on-entry] to cancel the effect of this command.
  18721. Redefining FUNCTION also cancels it.
  18722. Fcancel-debug-on-entry
  18723. Undo effect of \[debug-on-entry] on FUNCTION.
  18724. If argument is nil or an empty string, cancel for all functions.
  18725. Fdescribe-current-display-table
  18726. Describe the display table in use in the selected window and buffer.
  18727. Fmake-display-table
  18728. Return a new, empty display table.
  18729. Fstandard-display-8bit
  18730. Display characters in the range L to H literally.
  18731. Fstandard-display-default
  18732. Display characters in the range L to H using the default notation.
  18733. Fstandard-display-ascii
  18734. Display character C using printable string S.
  18735. Fstandard-display-g1
  18736. Display character C as character SC in the g1 character set.
  18737. This function assumes that your terminal uses the SO/SI characters;
  18738. it is meaningless for an X frame.
  18739. Fstandard-display-graphic
  18740. Display character C as character GC in graphics character set.
  18741. This function assumes VT100-compatible escapes; it is meaningless for an
  18742. X frame.
  18743. Fstandard-display-underline
  18744. Display character C as character UC plus underlining.
  18745. Fstandard-display-european
  18746. Toggle display of European characters encoded with ISO 8859.
  18747. When enabled, characters in the range of 160 to 255 display not
  18748. as octal escapes, but as accented characters.
  18749. With prefix argument, enable European character display iff arg is positive.
  18750. Fsetenv
  18751. Set the value of the environment variable named VARIABLE to VALUE.
  18752. VARIABLE should be a string.  VALUE is optional; if not provided or is
  18753. `nil', the environment variable VARIABLE will be removed.  
  18754. This function works by modifying `process-environment'.
  18755. Fname-last-kbd-macro
  18756. Assign a name to the last keyboard macro defined.
  18757. Argument SYMBOL is the name to define.
  18758. The symbol's function definition becomes the keyboard macro string.
  18759. Such a "function" cannot be called from Lisp, but it is a valid
  18760. editor command.
  18761. Finsert-kbd-macro
  18762. Insert in buffer the definition of kbd macro NAME, as Lisp code.
  18763. Optional second argument KEYS means also record the keys it is on
  18764. (this is the prefix argument, when calling interactively).
  18765.  
  18766. This Lisp code will, when executed, define the kbd macro with the
  18767. same definition it has now.  If you say to record the keys,
  18768. the Lisp code will also rebind those keys to the macro.
  18769. Only global key bindings are recorded since executing this Lisp code
  18770. always makes global bindings.
  18771.  
  18772. To save a kbd macro, visit a file of Lisp code such as your `~/.emacs',
  18773. use this command, and then save the file.
  18774. Fkbd-macro-query
  18775. Query user during kbd macro execution.
  18776. With prefix argument, enters recursive edit,
  18777.  reading keyboard commands even within a kbd macro.
  18778.  You can give different commands each time the macro executes.
  18779. Without prefix argument, asks whether to continue running the macro.
  18780. Your options are: \<query-replace-map>
  18781. \[act]    Finish this iteration normally and continue with the next.
  18782. \[skip]    Skip the rest of this iteration, and start the next.
  18783. \[exit]    Stop the macro entirely right now.
  18784. \[recenter]    Redisplay the frame, then ask again.
  18785. \[edit]    Enter recursive edit; ask again when you exit from that.
  18786. Fapply-macro-to-region-lines
  18787. For each complete line between point and mark, move to the beginning
  18788. of the line, and run the last keyboard macro.
  18789.  
  18790. When called from lisp, this function takes two arguments TOP and
  18791. BOTTOM, describing the current region.  TOP must be before BOTTOM.
  18792. The optional third argument MACRO specifies a keyboard macro to
  18793. execute.
  18794.  
  18795. This is useful for quoting or unquoting included text, adding and
  18796. removing comments, or producing tables where the entries are regular.
  18797.  
  18798. For example, in Usenet articles, sections of text quoted from another
  18799. author are indented, or have each line start with `>'.  To quote a
  18800. section of text, define a keyboard macro which inserts `>', put point
  18801. and mark at opposite ends of the quoted section, and use
  18802. `\[apply-macro-to-region-lines]' to mark the entire section.
  18803.  
  18804. Suppose you wanted to build a keyword table in C where each entry
  18805. looked like this:
  18806.  
  18807.     { "foo", foo_data, foo_function }, 
  18808.     { "bar", bar_data, bar_function },
  18809.     { "baz", baz_data, baz_function },
  18810.  
  18811. You could enter the names in this format:
  18812.  
  18813.     foo
  18814.     bar
  18815.     baz
  18816.  
  18817. and write a macro to massage a word into a table entry:
  18818.  
  18819.     \C-x (
  18820.        \M-d { "\C-y", \C-y_data, \C-y_function },
  18821.     \C-x )
  18822.  
  18823. and then select the region of un-tablified names and use
  18824. `\[apply-macro-to-region-lines]' to build the table from the names.
  18825.  
  18826. Fenable-command
  18827. Allow COMMAND to be executed without special confirmation from now on.
  18828. The user's .emacs file is altered so that this will apply
  18829. to future sessions.
  18830. Fdisable-command
  18831. Require special confirmation to execute COMMAND from now on.
  18832. The user's .emacs file is altered so that this will apply
  18833. to future sessions.
  18834. Flist-options
  18835. Display a list of XEmacs user options, with values and documentation.
  18836. Fedit-options
  18837. Edit a list of XEmacs user option values.
  18838. Selects a buffer containing such a list,
  18839. in which there are commands to set the option values.
  18840. Type \[describe-mode] in that buffer for a list of commands.
  18841. Fdelete-rectangle
  18842. Delete (don't save) text in rectangle with point and mark as corners.
  18843. The same range of columns is deleted in each line
  18844. starting with the line where the region begins
  18845. and ending with the line where the region ends.
  18846. Fdelete-extract-rectangle
  18847. Delete contents of rectangle and return it as a list of strings.
  18848. Arguments START and END are the corners of the rectangle.
  18849. The value is list of strings, one for each line of the rectangle.
  18850. Fextract-rectangle
  18851. Return contents of rectangle with corners at START and END.
  18852. Value is list of strings, one for each line of the rectangle.
  18853. Vkilled-rectangle
  18854. Rectangle for yank-rectangle to insert.
  18855. Fkill-rectangle
  18856. Delete rectangle with corners at point and mark; save as last killed one.
  18857. Calling from program, supply two args START and END, buffer positions.
  18858. But in programs you might prefer to use `delete-extract-rectangle'.
  18859. Fyank-rectangle
  18860. Yank the last killed rectangle with upper left corner at point.
  18861. Finsert-rectangle
  18862. Insert text of RECTANGLE with upper left corner at point.
  18863. RECTANGLE's first line is inserted at point,
  18864. its second line is inserted at a point vertically under point, etc.
  18865. RECTANGLE should be a list of strings.
  18866. After this command, the mark is at the upper left corner
  18867. and point is at the lower right corner.
  18868. Fopen-rectangle
  18869. Blank out rectangle with corners at point and mark, shifting text right.
  18870. The text previously in the region is not overwritten by the blanks,
  18871. but instead winds up to the right of the rectangle.
  18872. Fstring-rectangle
  18873. Insert STRING on each line of the region-rectangle, shifting text right.
  18874. The left edge of the rectangle specifies the column for insertion.
  18875. This command does not delete or overwrite any existing text.
  18876.  
  18877. Called from a program, takes three args; START, END and STRING.
  18878. Fclear-rectangle
  18879. Blank out rectangle with corners at point and mark.
  18880. The text previously in the region is overwritten by the blanks.
  18881. When called from a program, requires two args which specify the corners.
  18882. Freposition-window
  18883. Make the current definition and/or comment visible.
  18884. Further invocations move it to the top of the window or toggle the
  18885. visibility of comments that precede it.
  18886.   Point is left unchanged unless prefix ARG is supplied.
  18887.   If the definition is fully onscreen, it is moved to the top of the
  18888. window.  If it is partly offscreen, the window is scrolled to get the
  18889. definition (or as much as will fit) onscreen, unless point is in a comment
  18890. which is also partly offscreen, in which case the scrolling attempts to get
  18891. as much of the comment onscreen as possible.
  18892.   Initially `reposition-window' attempts to make both the definition and
  18893. preceding comments visible.  Further invocations toggle the visibility of
  18894. the comment lines.
  18895.   If ARG is non-nil, point may move in order to make the whole defun
  18896. visible (if only part could otherwise be made so), to make the defun line
  18897. visible (if point is in code and it could not be made so, or if only
  18898. comments, including the first comment line, are visible), or to make the
  18899. first comment line visible (if point is in a comment).
  18900. Fsort-subr
  18901. General text sorting routine to divide buffer into records and sort them.
  18902. Arguments are REVERSE NEXTRECFUN ENDRECFUN &optional STARTKEYFUN ENDKEYFUN.
  18903.  
  18904. We divide the accessible portion of the buffer into disjoint pieces
  18905. called sort records.  A portion of each sort record (perhaps all of
  18906. it) is designated as the sort key.  The records are rearranged in the
  18907. buffer in order by their sort keys.  The records may or may not be
  18908. contiguous.
  18909.  
  18910. Usually the records are rearranged in order of ascending sort key.
  18911. If REVERSE is non-nil, they are rearranged in order of descending sort key.
  18912.  
  18913. The next four arguments are functions to be called to move point
  18914. across a sort record.  They will be called many times from within sort-subr.
  18915.  
  18916. NEXTRECFUN is called with point at the end of the previous record.
  18917. It moves point to the start of the next record.
  18918. It should move point to the end of the buffer if there are no more records.
  18919. The first record is assumed to start at the position of point when sort-subr
  18920. is called.
  18921.  
  18922. ENDRECFUN is called with point within the record.
  18923. It should move point to the end of the record.
  18924.  
  18925. STARTKEYFUN moves from the start of the record to the start of the key.
  18926. It may return either a non-nil value to be used as the key, or
  18927. else the key is the substring between the values of point after
  18928. STARTKEYFUN and ENDKEYFUN are called.  If STARTKEYFUN is nil, the key
  18929. starts at the beginning of the record.
  18930.  
  18931. ENDKEYFUN moves from the start of the sort key to the end of the sort key.
  18932. ENDKEYFUN may be nil if STARTKEYFUN returns a value or if it would be the
  18933. same as ENDRECFUN.
  18934. Fsort-lines
  18935. Sort lines in region alphabetically; argument means descending order.
  18936. Called from a program, there are three arguments:
  18937. REVERSE (non-nil means reverse order), BEG and END (region to sort).
  18938. Fsort-paragraphs
  18939. Sort paragraphs in region alphabetically; argument means descending order.
  18940. Called from a program, there are three arguments:
  18941. REVERSE (non-nil means reverse order), BEG and END (region to sort).
  18942. Fsort-pages
  18943. Sort pages in region alphabetically; argument means descending order.
  18944. Called from a program, there are three arguments:
  18945. REVERSE (non-nil means reverse order), BEG and END (region to sort).
  18946. Fsort-numeric-fields
  18947. Sort lines in region numerically by the ARGth field of each line.
  18948. Fields are separated by whitespace and numbered from 1 up.
  18949. Specified field must contain a number in each line of the region.
  18950. With a negative arg, sorts by the ARGth field counted from the right.
  18951. Called from a program, there are three arguments:
  18952. FIELD, BEG and END.  BEG and END specify region to sort.
  18953. If you want to sort floating-point numbers, try `sort-float-fields'.
  18954. Fsort-float-fields
  18955. Sort lines in region numerically by the ARGth field of each line.
  18956. Fields are separated by whitespace and numbered from 1 up.  Specified field
  18957. must contain a floating point number in each line of the region.  With a
  18958. negative arg, sorts by the ARGth field counted from the right.  Called from a
  18959. program, there are three arguments: FIELD, BEG and END.  BEG and END specify
  18960. region to sort.
  18961. Fsort-fields
  18962. Sort lines in region lexicographically by the ARGth field of each line.
  18963. Fields are separated by whitespace and numbered from 1 up.
  18964. With a negative arg, sorts by the ARGth field counted from the right.
  18965. Called from a program, there are three arguments:
  18966. FIELD, BEG and END.  BEG and END specify region to sort.
  18967. Fsort-regexp-fields
  18968. Sort the region lexicographically as specified by RECORD-REGEXP and KEY.
  18969. RECORD-REGEXP specifies the textual units which should be sorted.
  18970.   For example, to sort lines RECORD-REGEXP would be "^.*$"
  18971. KEY specifies the part of each record (ie each match for RECORD-REGEXP)
  18972.   is to be used for sorting.
  18973.   If it is "\digit" then the digit'th "\(...\)" match field from
  18974.   RECORD-REGEXP is used.
  18975.   If it is "\&" then the whole record is used.
  18976.   Otherwise, it is a regular-expression for which to search within the record.
  18977. If a match for KEY is not found within a record then that record is ignored.
  18978.  
  18979. With a negative prefix arg sorts in reverse order.
  18980.  
  18981. For example: to sort lines in the region by the first word on each line
  18982.  starting with the letter "f",
  18983.  RECORD-REGEXP would be "^.*$" and KEY would be "\=\<f\w*\>"
  18984. Fsort-columns
  18985. Sort lines in region alphabetically by a certain range of columns.
  18986. For the purpose of this command, the region includes
  18987. the entire line that point is in and the entire line the mark is in.
  18988. The column positions of point and mark bound the range of columns to sort on.
  18989. A prefix argument means sort into reverse order.
  18990.  
  18991. Note that `sort-columns' rejects text that contains tabs,
  18992. because tabs could be split across the specified columns
  18993. and it doesn't know how to handle that.  Also, when possible,
  18994. it uses the `sort' utility program, which doesn't understand tabs.
  18995. Use \[untabify] to convert tabs to spaces before sorting.
  18996. Freverse-region
  18997. Reverse the order of lines in a region.
  18998. From a program takes two point or marker arguments, BEG and END.
  18999. Fload-sound-file
  19000. Read in an audio-file and add it to the sound-alist.
  19001.  
  19002. You can only play sound files if you are running on display 0 of the console
  19003. of a Sun SparcStation, SGI machine, or HP9000s700, or running a NetAudio
  19004. server.  The sound file must be in the Sun/NeXT U-LAW format.
  19005. Fload-default-sounds
  19006. Load and install some sound files as beep-types.
  19007. This only works if you're on display 0 of a Sun SparcStation, SGI machine,
  19008. or HP9000s700, or running a NetAudio server.
  19009. Funtabify
  19010. Convert all tabs in region to multiple spaces, preserving columns.
  19011. Called non-interactively, the region is specified by arguments
  19012. START and END, rather than by the position of point and mark.
  19013. The variable `tab-width' controls the spacing of tab stops.
  19014. Ftabify
  19015. Convert multiple spaces in region to tabs when possible.
  19016. A group of spaces is partially replaced by tabs
  19017. when this can be done without changing the column they end at.
  19018. Called non-interactively, the region is specified by arguments
  19019. START and END, rather than by the position of point and mark.
  19020. The variable `tab-width' controls the spacing of tab stops.
  19021. Fask-user-about-lock
  19022. Ask user what to do when he wants to edit FILE but it is locked by USER.
  19023. This function has a choice of three things to do:
  19024.   do (signal 'buffer-file-locked (list FILE USER))
  19025.     to refrain from editing the file
  19026.   return t (grab the lock on the file)
  19027.   return nil (edit the file even though it is locked).
  19028. You can rewrite it to use any criterion you like to choose which one to do.
  19029. Fask-user-about-supersession-threat
  19030. Ask a user who is about to modify an obsolete buffer what to do.
  19031. This function has two choices: it can return, in which case the modification
  19032. of the buffer will proceed, or it can (signal 'file-supersession (file)),
  19033. in which case the proposed buffer modification will not be made.
  19034.  
  19035. You can rewrite this to use any criterion you like to choose which one to do.
  19036. The buffer in question is current when this function is called.
  19037. Vrmail-dont-reply-to-names
  19038. *A regexp specifying names to prune of reply to messages.
  19039. A value of nil means exclude your own name only.
  19040. Vrmail-default-dont-reply-to-names
  19041. A regular expression specifying part of the value of the default value of
  19042. the variable `rmail-dont-reply-to-names', for when the user does not set
  19043. `rmail-dont-reply-to-names' explicitly.  (The other part of the default
  19044. value is the user's name.)
  19045. It is useful to set this variable in the site customization file.
  19046. Vrmail-delete-after-output
  19047. *Non-nil means automatically delete a message that is copied to a file.
  19048. Vrmail-primary-inbox-list
  19049. *List of files which are inboxes for user's primary mail file `~/RMAIL'.
  19050. `nil' means the default, which is ("/usr/spool/mail/$USER")
  19051. (the name varies depending on the operating system,
  19052. and the value of the environment variable MAIL overrides it).
  19053. Vrmail-mail-new-frame
  19054. *Non-nil means Rmail makes a new frame for composing outgoing mail.
  19055. Vrmail-retry-setup-hook
  19056. Hook that `rmail-retry-failure' uses in place of `mail-setup-hook'.
  19057. Frmail
  19058. Read and edit incoming mail.
  19059. Moves messages into file named by `rmail-file-name' (a babyl format file)
  19060.  and edits that file in RMAIL Mode.
  19061. Type \[describe-mode] once editing that file, for a list of RMAIL commands.
  19062.  
  19063. May be called with filename as argument; then performs rmail editing on
  19064. that file, but does not copy any new mail into the file.
  19065. Frmail-mode
  19066. Rmail Mode is used by \<rmail-mode-map>\[rmail] for editing Rmail files.
  19067. All normal editing commands are turned off.
  19068. Instead, these commands are available:
  19069.  
  19070. \[rmail-beginning-of-message]    Move point to front of this message (same as \[beginning-of-buffer]).
  19071. \[scroll-up]    Scroll to next screen of this message.
  19072. \[scroll-down]    Scroll to previous screen of this message.
  19073. \[rmail-next-undeleted-message]    Move to Next non-deleted message.
  19074. \[rmail-previous-undeleted-message]    Move to Previous non-deleted message.
  19075. \[rmail-next-message]    Move to Next message whether deleted or not.
  19076. \[rmail-previous-message]    Move to Previous message whether deleted or not.
  19077. \[rmail-first-message]    Move to the first message in Rmail file.
  19078. \[rmail-last-message]    Move to the last message in Rmail file.
  19079. \[rmail-show-message]    Jump to message specified by numeric position in file.
  19080. \[rmail-search]    Search for string and show message it is found in.
  19081. \[rmail-delete-forward]    Delete this message, move to next nondeleted.
  19082. \[rmail-delete-backward]    Delete this message, move to previous nondeleted.
  19083. \[rmail-undelete-previous-message]    Undelete message.  Tries current message, then earlier messages
  19084.     till a deleted message is found.
  19085. \[rmail-edit-current-message]    Edit the current message.  \[rmail-cease-edit] to return to Rmail.
  19086. \[rmail-expunge]    Expunge deleted messages.
  19087. \[rmail-expunge-and-save]    Expunge and save the file.
  19088. \[rmail-quit]       Quit Rmail: expunge, save, then switch to another buffer.
  19089. \[save-buffer] Save without expunging.
  19090. \[rmail-get-new-mail]    Move new mail from system spool directory into this file.
  19091. \[rmail-mail]    Mail a message (same as \[mail-other-window]).
  19092. \[rmail-continue]    Continue composing outgoing message started before.
  19093. \[rmail-reply]    Reply to this message.  Like \[rmail-mail] but initializes some fields.
  19094. \[rmail-retry-failure]    Send this message again.  Used on a mailer failure message.
  19095. \[rmail-forward]    Forward this message to another user.
  19096. \[rmail-output-to-rmail-file]       Output this message to an Rmail file (append it).
  19097. \[rmail-output]    Output this message to a Unix-format mail file (append it).
  19098. \[rmail-input]    Input Rmail file.  Run Rmail on that file.
  19099. \[rmail-add-label]    Add label to message.  It will be displayed in the mode line.
  19100. \[rmail-kill-label]    Kill label.  Remove a label from current message.
  19101. \[rmail-next-labeled-message]   Move to Next message with specified label
  19102.           (label defaults to last one specified).
  19103.           Standard labels: filed, unseen, answered, forwarded, deleted.
  19104.           Any other label is present only if you add it with \[rmail-add-label].
  19105. \[rmail-previous-labeled-message]   Move to Previous message with specified label
  19106. \[rmail-summary]    Show headers buffer, with a one line summary of each message.
  19107. \[rmail-summary-by-labels]    Summarize only messages with particular label(s).
  19108. \[rmail-summary-by-recipients]   Summarize only messages with particular recipient(s).
  19109. \[rmail-summary-by-regexp]   Summarize only messages with particular regexp(s).
  19110. \[rmail-summary-by-topic]   Summarize only messages with subject line regexp(s).
  19111. \[rmail-toggle-header]    Toggle display of complete header.
  19112. Frmail-input
  19113. Run Rmail on file FILENAME.
  19114. Fbatch-unrmail
  19115. Convert Rmail files to mailbox files.
  19116. Specify the input Rmail file names as command line arguments.
  19117. For each Rmail file, the corresponding output file name
  19118. is made by adding `.mail' at the end.
  19119. For example, invoke `emacs -batch -f batch-unrmail RMAIL'.
  19120. Funrmail
  19121. Convert Rmail file FILE to mailbox-format file TO-FILE.
  19122. Vad-redefinition-action
  19123. *Defines what to do with redefinitions during Advice de/activation.
  19124. Redefinition occurs if a previously activated function that already has an
  19125. original definition associated with it gets redefined and then de/activated.
  19126. In such a case we can either accept the current definition as the new
  19127. original definition, discard the current definition and replace it with the
  19128. old original, or keep it and raise an error.  The values `accept', `discard',
  19129. `error' or `warn' govern what will be done.  `warn' is just like `accept' but
  19130. it additionally prints a warning message.  All other values will be
  19131. interpreted as `error'.
  19132. Vad-default-compilation-action
  19133. *Defines whether to compile advised definitions during activation.
  19134. A value of `always' will result in unconditional compilation, `never' will
  19135. always avoid compilation, `maybe' will compile if the byte-compiler is already
  19136. loaded, and `like-original' will compile if the original definition of the
  19137. advised function is compiled or a built-in function. Every other value will
  19138. be interpreted as `maybe'. This variable will only be considered if the 
  19139. COMPILE argument of `ad-activate' was supplied as nil.
  19140. Fad-add-advice
  19141. Adds a piece of ADVICE to FUNCTION's list of advices in CLASS.
  19142. If FUNCTION already has one or more pieces of advice of the specified
  19143. CLASS then POSITION determines where the new piece will go.  The value
  19144. of POSITION can either be `first', `last' or a number where 0 corresponds
  19145. to `first'.  Numbers outside the range will be mapped to the closest
  19146. extreme position.  If there was already a piece of ADVICE with the same
  19147. name, then the position argument will be ignored and the old advice
  19148. will be overwritten with the new one.
  19149.     If the FUNCTION was not advised already, then its advice info will be 
  19150. initialized.  Redefining a piece of advice whose name is part of the cache-id
  19151. will clear the cache.
  19152. Fdefadvice
  19153. Defines a piece of advice for FUNCTION (a symbol).
  19154. The syntax of `defadvice' is as follows:
  19155.  
  19156.   (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...)
  19157.     [DOCSTRING] [INTERACTIVE-FORM]
  19158.     BODY... )
  19159.  
  19160. FUNCTION ::= Name of the function to be advised.
  19161. CLASS ::= `before' | `around' | `after' | `activation' | `deactivation'.
  19162. NAME ::= Non-nil symbol that names this piece of advice.
  19163. POSITION ::= `first' | `last' | NUMBER. Optional, defaults to `first',
  19164.     see also `ad-add-advice'.
  19165. ARGLIST ::= An optional argument list to be used for the advised function
  19166.     instead of the argument list of the original.  The first one found in
  19167.     before/around/after-advices will be used.
  19168. FLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'|`freeze'.
  19169.     All flags can be specified with unambiguous initial substrings.
  19170. DOCSTRING ::= Optional documentation for this piece of advice.
  19171. INTERACTIVE-FORM ::= Optional interactive form to be used for the advised
  19172.     function.  The first one found in before/around/after-advices will be used.
  19173. BODY ::= Any s-expression.
  19174.  
  19175. Semantics of the various flags:
  19176. `protect': The piece of advice will be protected against non-local exits in
  19177. any code that precedes it.  If any around-advice of a function is protected
  19178. then automatically all around-advices will be protected (the complete onion).
  19179.  
  19180. `activate': All advice of FUNCTION will be activated immediately if
  19181. FUNCTION has been properly defined prior to this application of `defadvice'.
  19182.  
  19183. `compile': In conjunction with `activate' specifies that the resulting
  19184. advised function should be compiled.
  19185.  
  19186. `disable': The defined advice will be disabled, hence, it will not be used 
  19187. during activation until somebody enables it.
  19188.  
  19189. `preactivate': Preactivates the advised FUNCTION at macro-expansion/compile
  19190. time.  This generates a compiled advised definition according to the current
  19191. advice state that will be used during activation if appropriate.  Only use
  19192. this if the `defadvice' gets actually compiled.
  19193.  
  19194. `freeze': Expands the `defadvice' into a redefining `defun/defmacro' according
  19195. to this particular single advice.  No other advice information will be saved.
  19196. Frozen advices cannot be undone, they behave like a hard redefinition of
  19197. the advised function.  `freeze' implies `activate' and `preactivate'.  The
  19198. documentation of the advised function can be dumped onto the `DOC' file
  19199. during preloading.
  19200.  
  19201. Look at the file `advice.el' for comprehensive documentation.
  19202. Fupdate-file-autoloads
  19203. Update the autoloads for FILE in `generated-autoload-file'
  19204. (which FILE might bind in its local variables).
  19205. Fupdate-autoloads-here
  19206. Update sections of the current buffer generated by \[update-file-autoloads].
  19207. Fupdate-directory-autoloads
  19208. Run \[update-file-autoloads] on each .el file in DIR.
  19209. Fbatch-update-autoloads
  19210. Update the autoloads for the files or directories on the command line.
  19211. Runs \[update-file-autoloads] on files and \[update-directory-autoloads]
  19212. on directories.  Must be used only with -batch, and kills Emacs on completion.
  19213. Each file will be processed even if an error occurred previously.
  19214. For example, invoke `emacs -batch -f batch-update-autoloads *.el'.
  19215. Fdefine-derived-mode
  19216. Create a new mode as a variant of an existing mode.
  19217.  
  19218. The arguments to this command are as follow:
  19219.  
  19220. PARENT:    the name of the command for the parent mode (ie. text-mode).
  19221. CHILD:     the name of the command for the derived mode.
  19222. NAME:      a string which will appear in the status line (ie. "Hypertext")
  19223. DOCSTRING: an optional documentation string--if you do not supply one,
  19224.            the function will attempt to invent something useful.
  19225. BODY:      forms to execute just before running the
  19226.            hooks for the new mode.
  19227.  
  19228. Here is how you could define LaTeX-Thesis mode as a variant of LaTeX mode:
  19229.  
  19230.   (define-derived-mode LaTeX-thesis-mode LaTeX-mode "LaTeX-Thesis")
  19231.  
  19232. You could then make new key bindings for `LaTeX-thesis-mode-map'
  19233. without changing regular LaTeX mode.  In this example, BODY is empty,
  19234. and DOCSTRING is generated by default.
  19235.  
  19236. On a more complicated level, the following command uses sgml-mode as
  19237. the parent, and then sets the variable `case-fold-search' to nil:
  19238.  
  19239.   (define-derived-mode article-mode sgml-mode "Article"
  19240.     "Major mode for editing technical articles."
  19241.     (setq case-fold-search nil))
  19242.  
  19243. Note that if the documentation string had been left out, it would have
  19244. been generated automatically, with a reference to the keymap.
  19245. Fderived-mode-init-mode-variables
  19246. Initialise variables for a new mode. 
  19247. Right now, if they don't already exist, set up a blank keymap, an
  19248. empty syntax table, and an empty abbrev table -- these will be merged
  19249. the first time the mode is used.
  19250. Fdocref-setup
  19251. Process docref cross-references in the current buffer.
  19252. See also \(f@docref-subst).
  19253. Feasy-menu-define
  19254. Define a menu bar submenu in maps MAPS, according to MENU.
  19255. The arguments SYMBOL and DOC are ignored; they are present for
  19256. compatibility only.  SYMBOL is not evaluated.  In other Emacs versions
  19257. these arguments may be used as a variable to hold the menu data, and a
  19258. doc string for that variable.
  19259.  
  19260. The first element of MENU must be a string.  It is the menu bar item name.
  19261. The rest of the elements are menu items.
  19262.  
  19263. A menu item is usually a vector of three elements:  [NAME CALLBACK ENABLE]
  19264.  
  19265. NAME is a string--the menu item name.
  19266.  
  19267. CALLBACK is a command to run when the item is chosen,
  19268. or a list to evaluate when the item is chosen.
  19269.  
  19270. ENABLE is an expression; the item is enabled for selection
  19271. whenever this expression's value is non-nil.
  19272.  
  19273. Alternatively, a menu item may have the form: 
  19274.  
  19275.    [ NAME CALLBACK [ KEYWORD ARG ] ... ]
  19276.  
  19277. Where KEYWORD is one of the symbol defined below.
  19278.  
  19279.    :keys KEYS
  19280.  
  19281. KEYS is a string; a complex keyboard equivalent to this menu item.
  19282.  
  19283.    :active ENABLE
  19284.  
  19285. ENABLE is an expression; the item is enabled for selection
  19286. whenever this expression's value is non-nil.
  19287.  
  19288.    :suffix NAME
  19289.  
  19290. NAME is a string; the name of an argument to CALLBACK.
  19291.  
  19292.    :style STYLE
  19293.    
  19294. STYLE is a symbol describing the type of menu item.  The following are
  19295. defined:  
  19296.  
  19297. toggle: A checkbox.  
  19298.         Currently just prepend the name with the string "Toggle ".
  19299. radio: A radio button. 
  19300. nil: An ordinary menu item.
  19301.  
  19302.    :selected SELECTED
  19303.  
  19304. SELECTED is an expression; the checkbox or radio button is selected
  19305. whenever this expression's value is non-nil.
  19306. Currently just disable radio buttons, no effect on checkboxes.
  19307.  
  19308. A menu item can be a string.  Then that string appears in the menu as
  19309. unselectable text.  A string consisting solely of hyphens is displayed
  19310. as a solid horizontal line.
  19311.  
  19312. A menu item can be a list.  It is treated as a submenu.
  19313. The first element should be the submenu name.  That's used as the
  19314. menu item in the top-level menu.  The cdr of the submenu list
  19315. is a list of menu items, as above.
  19316. Felp-instrument-function
  19317. Instrument FUNSYM for profiling.
  19318. FUNSYM must be a symbol of a defined function.
  19319. Felp-restore-function
  19320. Restore an instrumented function to its original definition.
  19321. Argument FUNSYM is the symbol of a defined function.
  19322. Felp-instrument-list
  19323. Instrument for profiling, all functions in `elp-function-list'.
  19324. Use optional LIST if provided instead.
  19325. Felp-instrument-package
  19326. Instrument for profiling, all functions which start with PREFIX.
  19327. For example, to instrument all ELP functions, do the following:
  19328.  
  19329.     \[elp-instrument-package] RET elp- RET
  19330. Felp-results
  19331. Display current profiling results.
  19332. If `elp-reset-after-results' is non-nil, then current profiling
  19333. information for all instrumented functions are reset after results are
  19334. displayed.
  19335. Felp-submit-bug-report
  19336. Submit via mail, a bug report on elp.
  19337. Fenable-flow-control
  19338. Toggle flow control handling.
  19339. When handling is enabled, user can type C-s as C-\, and C-q as C-^.
  19340. With arg, enable flow control mode if arg is positive, otherwise disable.
  19341. Fenable-flow-control-on
  19342. Enable flow control if using one of a specified set of terminal types.
  19343. Use `(enable-flow-control-on "vt100" "h19")' to enable flow control
  19344. on VT-100 and H19 terminals.  When flow control is enabled,
  19345. you must type C-\ to get the effect of a C-s, and type C-^
  19346. to get the effect of a C-q.
  19347. Fforms-mode
  19348. Major mode to visit files in a field-structured manner using a form.
  19349.  
  19350. Commands:                        Equivalent keys in read-only mode:
  19351.  
  19352.  TAB          forms-next-field           TAB
  19353.  C-c TAB      forms-next-field
  19354.  C-c <        forms-first-record         <
  19355.  C-c >        forms-last-record          >
  19356.  C-c ?        describe-mode              ?
  19357.  C-c C-k      forms-delete-record
  19358.  C-c C-q      forms-toggle-read-only     q
  19359.  C-c C-o      forms-insert-record
  19360.  C-c C-l      forms-jump-record          l
  19361.  C-c C-n      forms-next-record          n
  19362.  C-c C-p      forms-prev-record          p
  19363.  C-c C-s      forms-search               s
  19364.  C-c C-x      forms-exit                 x
  19365. Fforms-find-file
  19366. Visit a file in Forms mode.
  19367. Fforms-find-file-other-window
  19368. Visit a file in Forms mode in other window.
  19369. Fhighlight-headers
  19370. Highlight message headers between start and end.
  19371. Faces used:
  19372.   message-headers            the part before the colon
  19373.   message-header-contents        the part after the colon
  19374.   message-highlighted-header-contents    contents of "special" headers
  19375.   message-cited-text            quoted text from other messages
  19376.  
  19377. Variables used:
  19378.  
  19379.   highlight-headers-regexp            what makes a "special" header
  19380.   highlight-headers-citation-regexp        matches lines of quoted text
  19381.   highlight-headers-citation-header-regexp    matches headers for quoted text
  19382.  
  19383. If HACK-SIG is true,then we search backward from END for something that
  19384. looks like the beginning of a signature block, and don't consider that a
  19385. part of the message (this is because signatures are often incorrectly
  19386. interpreted as cited text.)
  19387. Funload-feature
  19388. Unload the library that provided FEATURE, restoring all its autoloads.
  19389. If the feature is required by any other loaded code, and optional FORCE
  19390. is nil, raise an error.
  19391. Fmail-extract-address-components
  19392. Given an RFC-822 ADDRESS, extract full name and canonical address.
  19393. Returns a list of the form (FULL-NAME CANONICAL-ADDRESS).
  19394. If no name can be extracted, FULL-NAME will be nil.
  19395. ADDRESS may be a string or a buffer.  If it is a buffer, the visible 
  19396.  (narrowed) portion of the buffer will be interpreted as the address.
  19397.  (This feature exists so that the clever caller might be able to avoid
  19398.  consing a string.)
  19399. If ADDRESS contains more than one RFC-822 address, only the first is
  19400.  returned.  Some day this function may be extended to extract multiple
  19401.  addresses, or perhaps return the position at which parsing stopped.
  19402. Fwhat-domain
  19403. Prompts for a mail domain, and prints the country it corresponds to
  19404. in the minibuffer.
  19405. Vmail-use-rfc822
  19406. *If non-nil, use a full, hairy RFC822 parser on mail addresses.
  19407. Otherwise, (the default) use a smaller, somewhat faster and
  19408. often-correct parser.
  19409. Fmap-y-or-n-p
  19410. Ask a series of boolean questions.
  19411. Takes args PROMPTER ACTOR LIST, and optional arg HELP.
  19412.  
  19413. LIST is a list of objects, or a function of no arguments to return the next
  19414. object or nil.
  19415.  
  19416. If PROMPTER is a string, the prompt is (format PROMPTER OBJECT).  If not
  19417. a string, PROMPTER is a function of one arg (an object from LIST), which
  19418. returns a string to be used as the prompt for that object.  If the return
  19419. value is not a string, it is eval'd to get the answer; it may be nil to
  19420. ignore the object, t to act on the object without asking the user, or a
  19421. form to do a more complex prompt.
  19422.  
  19423.  
  19424. ACTOR is a function of one arg (an object from LIST),
  19425. which gets called with each object that the user answers `yes' for.
  19426.  
  19427. If HELP is given, it is a list (OBJECT OBJECTS ACTION),
  19428. where OBJECT is a string giving the singular noun for an elt of LIST;
  19429. OBJECTS is the plural noun for elts of LIST, and ACTION is a transitive
  19430. verb describing ACTOR.  The default is ("object" "objects" "act on").
  19431.  
  19432. At the prompts, the user may enter y, Y, or SPC to act on that object;
  19433. n, N, or DEL to skip that object; ! to act on all following objects;
  19434. ESC or q to exit (skip all following objects); . (period) to act on the
  19435. current object and then exit; or \[help-command] to get help.
  19436.  
  19437. Returns the number of actions taken.
  19438. Fread-passwd
  19439. Prompts for a password in the minibuffer, and returns it as a string.
  19440. If PROMPT may be a prompt string or an alist of elements 
  19441. '(prompt . default).
  19442. If optional arg CONFIRM is true, then ask the user to type the password
  19443. again to confirm that they typed it correctly.
  19444. If optional arg DEFAULT is provided, then it is a string to insert as
  19445. the default choice (it is not, of course, displayed.)
  19446.  
  19447. If running under X, the keyboard will be grabbed (with XGrabKeyboard())
  19448. to reduce the possibility that evesdropping is occuring.
  19449.  
  19450. When reading a password, all keys self-insert, except for:
  19451. \<read-passwd-map>
  19452.     \[read-passwd-erase-line]    Erase the entire line.
  19453.     \[quoted-insert]    Insert the next character literally.
  19454.     \[delete-backward-char]    Delete the previous character.
  19455.     \[exit-minibuffer]    Accept what you have typed.
  19456.     \[keyboard-quit]    Abort the command.
  19457.  
  19458. The returned value is always a newly-created string.  No additional copies
  19459. of the password remain after this function has returned.
  19460.  
  19461. NOTE: unless great care is taken, the typed password will exist in plaintext
  19462. form in the running image for an arbitrarily long time.  Priveleged users may
  19463. be able to extract it from memory.  If emacs crashes, it may appear in the
  19464. resultant core file.
  19465.  
  19466. Some steps you can take to prevent the password from being copied around:
  19467.  
  19468.  - as soon as you are done with the returned string, destroy it with
  19469.    (fillarray string 0).  The same goes for any default passwords
  19470.    or password histories.
  19471.  
  19472.  - do not copy the string, as with concat or substring - if you do, be
  19473.    sure to keep track of and destroy all copies.
  19474.  
  19475.  - do not insert the password into a buffer - if you do, be sure to 
  19476.    overwrite the buffer text before killing it, as with the functions 
  19477.    `passwd-erase-buffer' or `passwd-kill-buffer'.  Note that deleting
  19478.    the text from the buffer does NOT necessarily remove the text from
  19479.    memory.
  19480.  
  19481.  - be careful of the undo history - if you insert the password into a 
  19482.    buffer which has undo recording turned on, the password will be 
  19483.    copied onto the undo list, and thus recoverable.
  19484.  
  19485.  - do not pass it as an argument to a shell command - anyone will be
  19486.    able to see it if they run `ps' at the right time.
  19487.  
  19488. Note that the password will be temporarily recoverable with the `view-lossage'
  19489. command.  This data will not be overwritten until another hundred or so 
  19490. characters are typed.  There's not currently a way around this.
  19491. Fpp
  19492. Output the pretty-printed representation of OBJECT, any Lisp object.
  19493. Quoting characters are printed when needed to make output that `read'
  19494. can handle, whenever this is possible.
  19495. Output stream is STREAM, or value of `standard-output' (which see).
  19496. Fring-p
  19497. Returns t if X is a ring; nil otherwise.
  19498. Fmake-ring
  19499. Make a ring that can contain SIZE elements.
  19500. Fget-text-property
  19501. Returns the value of the PROP property at the given position.
  19502. Fextent-properties-at
  19503. Returns the properties of the character at the given position,
  19504. by merging the properties of overlapping extents.  The returned value
  19505. is a property list, some of which may be shared with other structures.
  19506. You must not modify it.
  19507.  
  19508. This returns all properties on all extents.
  19509. Ftext-properties-at
  19510. Returns the properties of the character at the given position,
  19511. by merging the properties of overlapping extents.  The returned value
  19512. is a property list, some of which may be shared with other structures.
  19513. You must not modify it.
  19514.  
  19515. This returns only those properties added with `put-text-property'.
  19516. See also `extent-properties-at'.
  19517. Ftext-property-any
  19518. Check text from START to END to see if PROP is ever `eq' to VALUE.
  19519. If so, return the position of the first character whose PROP is `eq'
  19520. to VALUE.  Otherwise return nil.
  19521. The optional fifth argument, OBJECT, is the buffer containing the text.
  19522. Ftext-property-not-all
  19523. Check text from START to END to see if PROP is ever not `eq' to VALUE.
  19524. If so, return the position of the first character whose PROP is not
  19525. `eq' to VALUE.  Otherwise, return nil.
  19526. The optional fifth argument, OBJECT, is the buffer containing the text.
  19527. Fnext-property-change
  19528. Return the position of next property change.
  19529. Scans forward from POS in BUFFER (defaults to the current buffer) until
  19530.  it finds a change in some text property, then returns the position of
  19531.  the change.
  19532. Returns nil if the properties remain unchanged all the way to the end.
  19533. If the value is non-nil, it is a position greater than POS, never equal.
  19534. If the optional third argument LIMIT is non-nil, don't search
  19535.  past position LIMIT; return LIMIT if nothing is found before LIMIT.
  19536. If two or more extents with conflicting non-nil values for a property overlap
  19537.  a particular character, it is undefined which value is considered to be
  19538.  the value of the property. (Note that this situation will not happen if
  19539.  you always use the text-property primitives.)
  19540. Fprevious-property-change
  19541. Return the position of previous property change.
  19542. Scans backward from POS in BUFFER (defaults to the current buffer) until
  19543.  it finds a change in some text property, then returns the position of
  19544.  the change.
  19545. Returns nil if the properties remain unchanged all the way to the beginning.
  19546. If the value is non-nil, it is a position less than POS, never equal.
  19547. If the optional third argument LIMIT is non-nil, don't search back
  19548.  past position LIMIT; return LIMIT if nothing is found until LIMIT.
  19549. If two or more extents with conflicting non-nil values for a property overlap
  19550.  a particular character, it is undefined which value is considered to be
  19551.  the value of the property. (Note that this situation will not happen if
  19552.  you always use the text-property primitives.)
  19553. Ftq-create
  19554. Create and return a transaction queue communicating with PROCESS.
  19555. PROCESS should be a subprocess capable of sending and receiving
  19556. streams of bytes.  It may be a local process, or it may be connected
  19557. to a tcp server on another machine.
  19558. Vtrace-buffer
  19559. *Trace output will by default go to that buffer.
  19560. Ftrace-function
  19561. Traces FUNCTION with trace output going to BUFFER.
  19562. For every call of FUNCTION Lisp-style trace messages that display argument
  19563. and return values will be inserted into BUFFER. This function generates the
  19564. trace advice for FUNCTION and activates it together with any other advice
  19565. there might be!! The trace BUFFER will popup whenever FUNCTION is called.
  19566. Do not use this to trace functions that switch buffers or do any other
  19567. display oriented stuff, use `trace-function-background' instead.
  19568. Ftrace-function-background
  19569. Traces FUNCTION with trace output going quietly to BUFFER.
  19570. For every call of FUNCTION Lisp-style trace messages that display argument
  19571. and return values will be inserted into BUFFER. This function generates the
  19572. trace advice for FUNCTION and activates it together with any other advice
  19573. there might be!! Trace output will quietly go to BUFFER without changing
  19574. the window or buffer configuration at all.
  19575. Fwith-timeout
  19576. Usage: (with-timeout (seconds &rest timeout-forms) &rest body)
  19577. This is just like progn, but if the given number of seconds expires before
  19578. the body returns, then timeout-forms are evaluated and returned instead.
  19579. The body won't be interrupted in the middle of a computation: the check for 
  19580. the timer expiration only occurs when body does a redisplay, or prompts the
  19581. user for input, or calls accept-process-output.
  19582. Fyes-or-no-p-with-timeout
  19583. Just like yes-or-no-p, but will time out after TIMEOUT seconds
  19584. if the user has not yes answered, returning DEFAULT-VALUE.
  19585. Fy-or-n-p-with-timeout
  19586. Just like y-or-n-p, but will time out after TIMEOUT seconds
  19587. if the user has not yes answered, returning DEFAULT-VALUE.
  19588. Fviper-mode
  19589. Turn on Viper emulation of Vi.
  19590. Fvm-easy-menu-define
  19591. Define a menu bar submenu in maps MAPS, according to MENU.
  19592. The menu keymap is stored in symbol SYMBOL, both as its value
  19593. and as its function definition.   DOC is used as the doc string for SYMBOL.
  19594.  
  19595. The first element of MENU must be a string.  It is the menu bar item name.
  19596. The rest of the elements are menu items.
  19597.  
  19598. A menu item is usually a vector of three elements:  [NAME CALLBACK ENABLE]
  19599.  
  19600. NAME is a string--the menu item name.
  19601.  
  19602. CALLBACK is a command to run when the item is chosen,
  19603. or a list to evaluate when the item is chosen.
  19604.  
  19605. ENABLE is an expression; the item is enabled for selection
  19606. whenever this expression's value is non-nil.
  19607.  
  19608. Alternatively, a menu item may have the form: 
  19609.  
  19610.    [ NAME CALLBACK [ KEYWORD ARG ] ... ]
  19611.  
  19612. Where KEYWORD is one of the symbol defined below.
  19613.  
  19614.    :keys KEYS
  19615.  
  19616. KEYS is a string; a complex keyboard equivalent to this menu item.
  19617. This is normally not needed because keyboard equivalents are usually
  19618. computed automatically.
  19619.  
  19620.    :active ENABLE
  19621.  
  19622. ENABLE is an expression; the item is enabled for selection
  19623. whenever this expression's value is non-nil.
  19624.  
  19625.    :suffix NAME
  19626.  
  19627. NAME is a string; the name of an argument to CALLBACK.
  19628.  
  19629.    :style 
  19630.    
  19631. STYLE is a symbol describing the type of menu item.  The following are
  19632. defined:  
  19633.  
  19634. toggle: A checkbox.  
  19635.         Currently just prepend the name with the string "Toggle ".
  19636. radio: A radio button. 
  19637. nil: An ordinary menu item.
  19638.  
  19639.    :selected SELECTED
  19640.  
  19641. SELECTED is an expression; the checkbox or radio button is selected
  19642. whenever this expression's value is non-nil.
  19643. Currently just disable radio buttons, no effect on checkboxes.
  19644.  
  19645. A menu item can be a string.  Then that string appears in the menu as
  19646. unselectable text.  A string consisting solely of hyphens is displayed
  19647. as a solid horizontal line.
  19648.  
  19649. A menu item can be a list.  It is treated as a submenu.
  19650. The first element should be the submenu name.  That's used as the
  19651. menu item in the top-level menu.  The cdr of the submenu list
  19652. is a list of menu items, as above.
  19653. Furl-file-attributes
  19654. Return a list of attributes of URL.
  19655. Value is nil if specified file cannot be opened.
  19656. Otherwise, list elements are:
  19657.  0. t for directory, string (name linked to) for symbolic link, or nil.
  19658.  1. Number of links to file.
  19659.  2. File uid.
  19660.  3. File gid.
  19661.  4. Last access time, as a list of two integers.
  19662.   First integer has high-order 16 bits of time, second has low 16 bits.
  19663.  5. Last modification time, likewise.
  19664.  6. Last status change time, likewise.
  19665.  7. Size in bytes. (-1, if number is out of range).
  19666.  8. File modes, as a string of ten letters or dashes as in ls -l.
  19667.     If URL is on an http server, this will return the content-type if possible.
  19668.  9. t iff file's gid would change if file were deleted and recreated.
  19669. 10. inode number.
  19670. 11. Device number.
  19671.  
  19672. If file does not exist, returns nil.
  19673. Furl-normalize-url
  19674. Return a 'normalized' version of URL.  This strips out default port
  19675. numbers, etc.
  19676. Furl-buffer-visiting
  19677. Return the name of a buffer (if any) that is visiting URL.
  19678. Furl-get-url-at-point
  19679. Get the URL closest to point, but don't change your
  19680. position. Has a preference for looking backward when not
  19681. directly on a symbol.
  19682. Furl-popup-info
  19683. Retrieve the HTTP/1.0 headers and display them in a temp buffer.
  19684. Furl-cache-expired
  19685. Return t iff a cached file has expired.
  19686. Furl-retrieve
  19687. Retrieve a document over the World Wide Web.
  19688. The document should be specified by its fully specified
  19689. Uniform Resource Locator.  No parsing is done, just return the
  19690. document as the server sent it.  The document is left in the
  19691. buffer specified by url-working-buffer.  url-working-buffer is killed
  19692. immediately before starting the transfer, so that no buffer-local
  19693. variables interfere with the retrieval.  HTTP/1.0 redirection will
  19694. be honored before this function exits.
  19695. Fw3-use-hotlist
  19696. Possibly go to a link in your W3/Mosaic hotlist.
  19697. This is part of the emacs World Wide Web browser.  It will prompt for
  19698. one of the items in your 'hotlist'.  A hotlist is a list of often
  19699. visited or interesting items you have found on the World Wide Web.
  19700. Fw3-open-local
  19701. Find a local file, and interpret it as a hypertext document.
  19702. It will prompt for an existing file or directory, and retrieve it as a
  19703. hypertext document.  If it is a directory, and url-use-hypertext-dired
  19704. is non-nil, then an HTML directory listing is created on the fly.
  19705. Otherwise, dired-mode is used to visit the buffer.
  19706. Fw3-fetch-other-frame
  19707. Attempt to follow the hypertext reference under point in a new frame.
  19708. With prefix-arg P, ignore viewers and dump the link straight
  19709. to disk.
  19710. Fw3-fetch
  19711. Retrieve a document over the World Wide Web.
  19712. The World Wide Web is a global hypertext system started by CERN in
  19713. Switzerland in 1991.
  19714.  
  19715. The document should be specified by its fully specified
  19716. Uniform Resource Locator.  The document will be parsed, printed, or
  19717. passed to an external viewer as appropriate.  Variable
  19718. `mm-mime-info' specifies viewers for particular file types.
  19719. Fw3-maybe-follow-link-mouse
  19720. Maybe follow a hypertext link under point.
  19721. If there is no link under point, this will try using
  19722. url-get-url-at-point
  19723. Fw3-maybe-follow-link
  19724. Maybe follow a hypertext link under point.
  19725. If there is no link under point, this will try using
  19726. url-get-url-at-point
  19727. Fw3-follow-url-at-point-other-frame
  19728. Follow the URL under PT, defaults to link under (point)
  19729. Fw3-follow-url-at-point
  19730. Follow the URL under PT, defaults to link under (point)
  19731. Fw3-batch-fetch
  19732. Fetch all the URLs on the command line and save them to files in
  19733. the current directory.  The first argument after the -f w3-batch-fetch
  19734. on the command line should be a string specifying how to save the
  19735. information retrieved.  If it is "html", then the page will be
  19736. unformatted when it is written to disk.  If it is "text", then the
  19737. page will be formatted before it is written to disk.  If it is
  19738. "binary" it will not mess with the file extensions, and just save
  19739. the data in raw binary format.  If none of those, the default is
  19740. "text", and the first argument is treated as a normal URL.
  19741. Fw3-preview-this-buffer
  19742. See what this buffer will look like when its formatted as HTML.
  19743. HTML is the HyperText Markup Language used by the World Wide Web to
  19744. specify formatting for text.  More information on HTML can be found at
  19745. ftp.w3.org:/pub/www/doc.
  19746. Fw3
  19747. Retrieve the default World Wide Web home page.
  19748. The World Wide Web is a global hypertext system started by CERN in
  19749. Switzerland in 1991.
  19750.  
  19751. The home page is specified by the variable w3-default-homepage.  The
  19752. document should be specified by its fully specified Uniform Resource
  19753. Locator.  The document will be parsed as HTML (if appropriate) and
  19754. displayed in a new buffer.
  19755. Fw3-follow-link-other-frame
  19756. Attempt to follow the hypertext reference under point in a new frame.
  19757. With prefix-arg P, ignore viewers and dump the link straight
  19758. to disk.
  19759. Fw3-follow-link
  19760. Attempt to follow the hypertext reference under point.
  19761. With prefix-arg P, ignore viewers and dump the link straight
  19762. to disk.
  19763. Vfont-menu-ignore-scaled-fonts
  19764. *If non-nil, then the font menu will try to show only bitmap fonts.
  19765. Vfont-menu-this-frame-only-p
  19766. *If non-nil, then changing the default font from the font menu will only
  19767. affect one frame instead of all frames.
  19768. Freset-device-font-menus
  19769. Generates the `Font', `Size', and `Weight' submenus for the Options menu.
  19770. This is run the first time that a font-menu is needed for each device.
  19771. If you don't like the lazy invocation of this function, you can add it to
  19772. `create-device-hook' and that will make the font menus respond more quickly
  19773. when they are selected for the first time.  If you add fonts to your system, 
  19774. or if you change your font path, you can call this to re-initialize the menus.
  19775. Fproclaim-inline
  19776. Cause the named functions to be open-coded when called from compiled code.
  19777. They will only be compiled open-coded when byte-optimize is true.
  19778. Fproclaim-notinline
  19779. Cause the named functions to no longer be open-coded.
  19780. Fdefsubst
  19781. Define an inline function.  The syntax is just like that of `defun'.
  19782. Fmake-obsolete
  19783. Make the byte-compiler warn that FUNCTION is obsolete.
  19784. The warning will say that NEW should be used instead.
  19785. If NEW is a string, that is the `use instead' message.
  19786. Fmake-obsolete-variable
  19787. Make the byte-compiler warn that VARIABLE is obsolete,
  19788. and NEW should be used instead.  If NEW is a string, then that is the
  19789. `use instead' message.
  19790. Fdont-compile
  19791. Like `progn', but the body always runs interpreted (not compiled).
  19792. If you think you need this, you're probably making a mistake somewhere.
  19793. Feval-when-compile
  19794. Like `progn', but evaluates the body at compile time.
  19795. The result of the body appears to the compiler as a quoted constant.
  19796. Feval-and-compile
  19797. Like `progn', but evaluates the body at compile time and at load time.
  19798. Fbyte-compiler-options
  19799. Set some compilation-parameters for this file.  
  19800. This will affect only the file in which it appears; this does nothing when
  19801. evaluated, and when loaded from a .el file.
  19802.  
  19803. Each argument to this macro must be a list of a key and a value.
  19804.  
  19805.   Keys:          Values:        Corresponding variable:
  19806.  
  19807.   verbose      t, nil        byte-compile-verbose
  19808.   optimize      t, nil, source, byte    byte-optimize
  19809.   warnings      list of warnings    byte-compile-warnings
  19810.   file-format      emacs18, emacs19    byte-compile-emacs18-compatibility
  19811.   new-bytecodes      t, nil        byte-compile-generate-emacs19-bytecodes
  19812.  
  19813. The value specificed with the `warnings' option must be a list, containing
  19814. some subset of the following flags:
  19815.  
  19816.   free-vars    references to variables not in the current lexical scope.
  19817.   unused-vars    references to non-global variables bound but not referenced.
  19818.   unresolved    calls to unknown functions.
  19819.   callargs    lambda calls with args that don't match the definition.
  19820.   redefine    function cell redefined from a macro to a lambda or vice
  19821.         versa, or redefined to take a different number of arguments.
  19822.  
  19823. If the first element if the list is `+' or `-' then the specified elements 
  19824. are added to or removed from the current set of warnings, instead of the
  19825. entire set of warnings being overwritten.
  19826.  
  19827. For example, something like this might appear at the top of a source file:
  19828.  
  19829.     (byte-compiler-options
  19830.       (optimize t)
  19831.       (warnings (- callargs))        ; Don't warn about arglist mismatch
  19832.       (warnings (+ unused-vars))    ; Do warn about unused bindings
  19833.       (file-format emacs19))
  19834. Vpi
  19835. The value of Pi (3.1415926...)
  19836. Ve
  19837. The value of e (2.7182818...)
  19838. Vdegrees-to-radians
  19839. Degrees to radian conversion constant
  19840. Vradians-to-degrees
  19841. Radian to degree conversion constant
  19842. Fdegrees-to-radians
  19843. Convert ARG from degrees to radians.
  19844. Fradians-to-degrees
  19845. Convert ARG from radians to degrees.
  19846. Vitimer-version
  19847. Version number of the itimer package.
  19848. Vitimer-list
  19849. List of all active itimers.
  19850. Vitimer-edit-map
  19851. Keymap used when in Itimer Edit mode.
  19852. Fcheck-itimer
  19853. If VAR is not bound to an itimer, signal wrong-type-argument.
  19854. This is a macro.
  19855. Fcheck-itimer-coerce-string
  19856. If VAR is not bound to a string, look up the itimer that it names and
  19857. bind VAR to it.  Otherwise if VAR is not bound to an itimer, signal
  19858. wrong-type-argument.  This is a macro.
  19859. Fitimer-check-natnum
  19860. If VAR is not bound to a non-negative number, signal wrong-type-argument.
  19861. This is a macro.
  19862. Fitimer-check-string
  19863. If VAR is not bound to a string, signal wrong-type-argument.
  19864. This is a macro.
  19865. Fitimerp
  19866. Returns non-nil iff OBJ is an itimer.
  19867. Fitimer-name
  19868. Returns the name of ITIMER.
  19869. Fitimer-value
  19870. Returns the number of seconds until ITIMER expires.
  19871. Fitimer-restart
  19872. Returns the value to which ITIMER will be set at restart.
  19873. nil is returned if this itimer doesn't restart.
  19874. Fitimer-function
  19875. Returns the function of ITIMER.
  19876. This function is called each time ITIMER expires.
  19877. Fitimer-id
  19878. Returns the timeout-id of ITIMER.
  19879. Fset-itimer-value
  19880. Set the timeout value of ITIMER to be VALUE.
  19881. Itimer will expire is this many seconds.
  19882. Returns VALUE.
  19883. Fset-itimer-restart
  19884. Set the restart value of ITIMER to be RESTART.
  19885. If RESTART is nil, ITIMER will not restart when it expires.
  19886. Returns RESTART.
  19887. Fset-itimer-function
  19888. Set the function of ITIMER to be FUNCTION.
  19889. FUNCTION will be called when itimer expires.
  19890. Returns FUNCTION.
  19891. Fget-itimer
  19892. Return itimer named NAME, or nil if there is none.
  19893. Fread-itimer
  19894. Read the name of an itimer from the minibuffer and return the itimer
  19895. associated with that name.  The user is prompted with PROMPT.
  19896. Optional second arg INITIAL-INPUT non-nil is inserted into the
  19897.   minibuffer as initial user input.
  19898. Fdelete-itimer
  19899. Deletes ITIMER.  ITIMER may be an itimer or the name of one.
  19900. Fstart-itimer
  19901. Start an itimer.
  19902. Args are NAME, FUNCTION, VALUE &optional RESTART.
  19903. NAME is an identifier for the itimer.  It must be a string.  If an itimer
  19904.   already exists with this name, NAME will be modified slightly to until
  19905.   it is unique.
  19906. FUNCTION should be a function (or symbol naming one) of no arguments.  It
  19907.   will be called each time the itimer expires.  The function can access
  19908.   itimer that invoked it through the variable `current-itimer'.
  19909. VALUE is the number of seconds until this itimer expires.
  19910. Optional fourth arg RESTART non-nil means that this itimer should be
  19911.   restarted automatically after its function is called.  Normally an itimer
  19912.   is deleted at expiration after its function has returned. 
  19913.   If non-nil RESTART should be a number indicating the value at which the
  19914.   itimer should be set at restart time.
  19915. Returns the newly created itimer.
  19916. Flist-itimers
  19917. Pop up a buffer containing a list of all itimers.
  19918. The major mode of the buffer is Itimer Edit mode.  This major mode provides
  19919. commands to manipulate itimers; see the documentation for
  19920. `itimer-edit-mode' for more information.
  19921. Fedit-itimers
  19922. Display a list of all itimers and select it for editing.
  19923. The major mode of the buffer containing the listing is Itimer Edit mode.
  19924. This major mode provides commands to manipulate itimers; see the documentation
  19925. for `itimer-edit-mode' for more information.
  19926. Fitimer-edit-mode
  19927. Major mode for manipulating itimers.
  19928. Atrributes of running itimers are changed by moving the cursor to the
  19929. desired field and typing `s' to set that field.  The field will then be
  19930. set to the value read from the minibuffer.
  19931.  
  19932. Commands:
  19933. TAB    move forward a field
  19934. DEL    move backward a field
  19935. s      set a field
  19936. d      delete the selected itimer
  19937. x      start a new itimer
  19938. ?      help
  19939. Fitimer-edit-help
  19940. Help function for Itimer Edit.
  19941. Fitimer-edit-quit
  19942. End Itimer Edit.
  19943. Vauto-save-timeout
  19944. *Number of seconds idle time before auto-save.
  19945. Zero or nil means disable auto-saving due to idleness.
  19946.  
  19947. The actual amount of idle time between auto-saves is logarithmically related
  19948. to the size of the current buffer.  This variable is the number of seconds
  19949. after which an auto-save will happen when the current buffer is 50k or less;
  19950. the timeout will be 2 1/4 times this in a 200k buffer, 3 3/4 times this in a
  19951. 1000k buffer, and 4 1/2 times this in a 2000k buffer.
  19952.  
  19953. See also the variable `auto-save-interval', which controls auto-saving based
  19954. on the number of characters typed.
  19955. Vauto-gc-threshold
  19956. *GC when this many bytes have been consed since the last GC, 
  19957. and the user has been idle for `auto-save-timeout' seconds.
  19958. Fauto-save-itimer
  19959. For use as a itimer callback function.
  19960. Auto-saves and garbage-collects based on the size of the current buffer
  19961. and the value of `auto-save-timeout', `auto-gc-threshold', and the current
  19962. keyboard idle-time.
  19963. Fscrollbar-char-left
  19964. Function called when the char-left arrow on the scrollbar is clicked.
  19965. This is the little arrow to the left of the scrollbar.  One argument is
  19966. passed, the scrollbar's window.  You can advise this function to
  19967. change the scrollbar behavior.
  19968. Fscrollbar-char-right
  19969. Function called when the char-right arrow on the scrollbar is clicked.
  19970. This is the little arrow to the right of the scrollbar.  One argument is
  19971. passed, the scrollbar's window.  You can advise this function to
  19972. change the scrollbar behavior.
  19973. Fscrollbar-page-left
  19974. Function called when the user gives the "page-left" scrollbar action.
  19975. (The way this is done can vary from scrollbar to scrollbar.) One argument is
  19976. passed, the scrollbar's window.  You can advise this function to
  19977. change the scrollbar behavior.
  19978. Fscrollbar-page-right
  19979. Function called when the user gives the "page-right" scrollbar action.
  19980. (The way this is done can vary from scrollbar to scrollbar.) One argument is
  19981. passed, the scrollbar's window.  You can advise this function to
  19982. change the scrollbar behavior.
  19983. Fscrollbar-to-left
  19984. Function called when the user gives the "to-left" scrollbar action.
  19985. (The way this is done can vary from scrollbar to scrollbar.). One argument is
  19986. passed, the scrollbar's window.  You can advise this function to
  19987. change the scrollbar behavior.
  19988. Fscrollbar-to-right
  19989. Function called when the user gives the "to-right" scrollbar action.
  19990. (The way this is done can vary from scrollbar to scrollbar.). One argument is
  19991. passed, the scrollbar's window.  You can advise this function to
  19992. change the scrollbar behavior.
  19993. Fscrollbar-horizontal-drag
  19994. Function called when the user drags the horizontal scrollbar thumb.
  19995. One argument is passed, a cons containing the scrollbar's window and a value
  19996. representing how many columns the thumb is slid over.  You can advise
  19997. this function to change the scrollbar behavior.
  19998. Vonly-global-abbrevs
  19999. *t means user plans to use global abbrevs only.
  20000. Makes the commands to define mode-specific abbrevs define global ones instead.
  20001. Vabbrev-table-name-list
  20002. List of symbols whose values are abbrev tables.
  20003. Vabbrevs-changed
  20004. Set non-nil by defining or altering any word abbrevs.
  20005. This causes `save-some-buffers' to offer to save the abbrevs.
  20006. Fmake-abbrev-table
  20007. Create a new, empty abbrev table object.
  20008. Fclear-abbrev-table
  20009. Undefine all abbrevs in abbrev table TABLE, leaving it empty.
  20010. Fdefine-abbrev-table
  20011. Define TABNAME (a symbol) as an abbrev table name.
  20012. Define abbrevs in it according to DEFINITIONS, which is a list of elements
  20013. of the form (ABBREVNAME EXPANSION HOOK USECOUNT).
  20014. Fdefine-abbrev
  20015. Define an abbrev in TABLE named NAME, to expand to EXPANSION or call HOOK.
  20016. NAME and EXPANSION are strings.  Hook is a function or `nil'.
  20017. To undefine an abbrev, define with the an expansion of `nil'.
  20018. Fdefine-global-abbrev
  20019. Define ABBREV as a global abbreviation for EXPANSION.
  20020. Fdefine-mode-abbrev
  20021. Define ABBREV as a mode-specific abbreviation for EXPANSION.
  20022. Fabbrev-symbol
  20023. Return the symbol representing abbrev named ABBREV.
  20024. This symbol's name is ABBREV, but it is not the canonical symbol of that name;
  20025. it is interned in an abbrev-table rather than the normal obarray.
  20026. The value is nil if that abbrev is not defined.
  20027. Optional second arg TABLE is abbrev table to look it up in.
  20028. The default is to try buffer's mode-specific abbrev table, then global table.
  20029. Fabbrev-expansion
  20030. Return the string that ABBREV expands into in the current buffer.
  20031. Optionally specify an abbrev table as second arg;
  20032. then ABBREV is looked up in that table only.
  20033. Funexpand-abbrev
  20034. Undo the expansion of the last abbrev that expanded.
  20035. This differs from ordinary undo in that other editing done since then
  20036. is not undone.
  20037. Finsert-abbrev-table-description
  20038. Insert before point a full description of abbrev table named NAME.
  20039. NAME is a symbol whose value is an abbrev table.
  20040. If optional 2nd arg HUMAN is non-nil, insert a human-readable description.
  20041. Otherwise the description is an expression,
  20042. a call to `define-abbrev-table', which would
  20043. define the abbrev table NAME exactly as it is currently defined.
  20044. Fabbrev-mode
  20045. Toggle abbrev mode.
  20046. With arg, turn abbrev mode on iff arg is positive.
  20047. In abbrev mode, inserting an abbreviation causes it to expand
  20048. and be replaced by its expansion.
  20049. Vedit-abbrevs-map
  20050. Keymap used in edit-abbrevs.
  20051. Fkill-all-abbrevs
  20052. Undefine all defined abbrevs.
  20053. Finsert-abbrevs
  20054. Insert after point a description of all defined abbrevs.
  20055. Mark is set after the inserted text.
  20056. Flist-abbrevs
  20057. Display a list of all defined abbrevs.
  20058. Fedit-abbrevs-mode
  20059. Major mode for editing the list of abbrev definitions.
  20060. \{edit-abbrevs-map}
  20061. Fedit-abbrevs
  20062. Alter abbrev definitions by editing a list of them.
  20063. Selects a buffer containing a list of abbrev definitions.
  20064. You can edit them and type C-c C-c to redefine abbrevs
  20065. according to your editing.
  20066. Buffer contains a header line for each abbrev table,
  20067.  which is the abbrev table name in parentheses.
  20068. This is followed by one line per abbrev in that table:
  20069. NAME   USECOUNT   EXPANSION   HOOK
  20070. where NAME and EXPANSION are strings with quotes,
  20071. USECOUNT is an integer, and HOOK is any valid function
  20072. or may be omitted (it is usually omitted).
  20073. Fedit-abbrevs-redefine
  20074. Redefine abbrevs according to current buffer contents.
  20075. Fdefine-abbrevs
  20076. Define abbrevs according to current visible buffer contents.
  20077. See documentation of edit-abbrevs for info on the format of the
  20078. text you must have in the buffer.
  20079. With argument, eliminate all abbrev definitions except
  20080. the ones defined from the buffer now.
  20081. Fread-abbrev-file
  20082. Read abbrev definitions from file written with write-abbrev-file.
  20083. Takes file name as argument.
  20084. Optional second argument non-nil means don't print anything.
  20085. Fquietly-read-abbrev-file
  20086. Read abbrev definitions from file written with write-abbrev-file.
  20087. Takes file name as argument.  Does not print anything.
  20088. Fwrite-abbrev-file
  20089. Write all abbrev definitions to file of Lisp code.
  20090. The file can be loaded to define the same abbrevs.
  20091. Fadd-mode-abbrev
  20092. Define mode-specific abbrev for last word(s) before point.
  20093. Argument is how many words before point form the expansion;
  20094. or zero means the region is the expansion.
  20095. A negative argument means to undefine the specified abbrev.
  20096. Reads the abbreviation in the minibuffer.
  20097.  
  20098. Don't use this function in a Lisp program; use define-abbrev instead.
  20099. Fadd-global-abbrev
  20100. Define global (all modes) abbrev for last word(s) before point.
  20101. Argument is how many words before point form the expansion;
  20102. or zero means the region is the expansion.
  20103. A negative argument means to undefine the specified abbrev.
  20104. Reads the abbreviation in the minibuffer.
  20105.  
  20106. Don't use this function in a Lisp program; use define-abbrev instead.
  20107. Finverse-add-mode-abbrev
  20108. Define last word before point as a mode-specific abbrev.
  20109. With argument N, defines the Nth word before point.
  20110. Reads the expansion in the minibuffer.
  20111. Expands the abbreviation after defining it.
  20112. Finverse-add-global-abbrev
  20113. Define last word before point as a global (mode-independent) abbrev.
  20114. With argument N, defines the Nth word before point.
  20115. Reads the expansion in the minibuffer.
  20116. Expands the abbreviation after defining it.
  20117. Fabbrev-prefix-mark
  20118. Mark current point as the beginning of an abbrev.
  20119. Abbrev to be expanded starts here rather than at
  20120. beginning of word.  This way, you can expand an abbrev
  20121. with a prefix: insert the prefix, use this command,
  20122. then insert the abbrev.
  20123. Fexpand-region-abbrevs
  20124. For abbrev occurrence in the region, offer to expand it.
  20125. The user is asked to type y or n for each occurrence.
  20126. A numeric argument means don't query; expand all abbrevs.
  20127. Calling from a program, arguments are START END &optional NOQUERY.
  20128. Ffile-menu-filter
  20129. Incrementally update the file menu.
  20130. This function changes the arguments and sensitivity of these File menu items:
  20131.  
  20132.   Delete Buffer  has the name of the current buffer appended to it.
  20133.   Print Buffer   has the name of the current buffer appended to it.
  20134.   Pretty-Print Buffer
  20135.          has the name of the current buffer appended to it.
  20136.   Save           has the name of the current buffer appended to it, and is
  20137.                  sensitive only when the current buffer is modified.
  20138.   Revert Buffer  has the name of the current buffer appended to it, and is
  20139.                  sensitive only when the current buffer has a file.
  20140.   Delete Frame   sensitive only when there is more than one frame.
  20141.  
  20142. The name of the current buffer is only appended to the menu items if
  20143. `put-buffer-names-in-file-menu' is non-nil.  This behavior is the default.
  20144. Fedit-menu-filter
  20145. For use as an incremental menu construction filter.
  20146. This function changes the sensitivity of these Edit menu items:
  20147.  
  20148.   Cut    sensitive only when emacs owns the primary X Selection.
  20149.   Copy   sensitive only when emacs owns the primary X Selection.
  20150.   Clear  sensitive only when emacs owns the primary X Selection.
  20151.   Paste  sensitive only when there is an owner for the X Clipboard Selection.
  20152.   Undo   sensitive only when there is undo information.
  20153.          While in the midst of an undo, this is changed to "Undo More".
  20154. Fslow-format-buffers-menu-line
  20155. Returns a string to represent the given buffer in the Buffer menu.
  20156. nil means the buffer shouldn't be listed.  You can redefine this.
  20157. Fformat-buffers-menu-line
  20158. Returns a string to represent the given buffer in the Buffer menu.
  20159. nil means the buffer shouldn't be listed.  You can redefine this.
  20160. Vbuffers-menu-max-size
  20161. *Maximum number of entries which may appear on the "Buffers" menu.
  20162. If this is 10, then only the ten most-recently-selected buffers will be
  20163. shown.  If this is nil, then all buffers will be shown.  Setting this to
  20164. a large number or nil will slow down menu responsiveness.
  20165. Vcomplex-buffers-menu-p
  20166. *If true, the buffers menu will contain several commands, as submenus
  20167. of each buffer line.  If this is false, then there will be only one command:
  20168. select that buffer.
  20169. Vbuffers-menu-switch-to-buffer-function
  20170. *The function to call to select a buffer from the buffers menu.
  20171. `switch-to-buffer' is a good choice, as is `pop-to-buffer'.
  20172. Fbuffers-menu-filter
  20173. This is the menu filter for the top-level buffers "Buffers" menu.
  20174. It dynamically creates a list of buffers to use as the contents of the menu.
  20175. Only the most-recently-used few buffers will be listed on the menu, for
  20176. efficiency reasons.  You can control how many buffers will be shown by
  20177. setting `buffers-menu-max-size'.  You can control the text of the menu
  20178. items by redefining the function `format-buffers-menu-line'.
  20179. Voptions-menu-saved-forms
  20180. The variables to save; or forms to evaluate to get forms to write out.
  20181. Vsave-options-file
  20182. File to save options into.
  20183. Fsave-options-menu-settings
  20184. Saves the current settings of the `Options' menu to your `.emacs' file.
  20185. Vglobal-popup-menu
  20186. The global popup menu.  This is present in all modes.
  20187. See the function `popup-menu' for a description of menu syntax.
  20188. Vmode-popup-menu
  20189. The mode-specific popup menu.  Automatically buffer local.
  20190. This is appended to the default items in `global-popup-menu'.
  20191. See the function `popup-menu' for a description of menu syntax.
  20192. Vactivate-popup-menu-hook
  20193. Function or functions run before a mode-specific popup menu is made visible.
  20194. These functions are called with no arguments, and should interrogate and
  20195. modify the value of `global-popup-menu' or `mode-popup-menu' as desired.
  20196. Note: this hook is only run if you use `popup-mode-menu' for activating the
  20197. global and mode-specific commands; if you have your own binding for button3,
  20198. this hook won't be run.
  20199. Fpopup-mode-menu
  20200. Pop up a menu of global and mode-specific commands.
  20201. The menu is computed by combining `global-popup-menu' and `mode-popup-menu'.
  20202. Fpopup-buffer-menu
  20203. Pop up a copy of the Buffers menu (from the menubar) where the mouse is clicked.
  20204. Fpopup-menubar-menu
  20205. Pop up a copy of menu that also appears in the menubar
  20206. Fkill-this-buffer
  20207. Kill the current buffer.
  20208. Fset-menubar
  20209. Set the default menubar to be MENUBAR.
  20210. See `current-menubar' for a description of the syntax of a menubar.
  20211. Fset-buffer-menubar
  20212. Set the buffer-local menubar to be MENUBAR.
  20213. See `current-menubar' for a description of the syntax of a menubar.
  20214. Ffind-menu-item
  20215. Search MENUBAR for item given by ITEM-PATH-LIST starting from PARENT.
  20216. Returns (ITEM . PARENT), where PARENT is the immediate parent of
  20217.  the item found.
  20218. If the item does not exist, the car of the returned value is nil.
  20219. If some menu in the ITEM-PATH-LIST does not exist, an error is signalled.
  20220. Freplace-list-element
  20221. Destructively replace OLD element with NEW element in LIST.
  20222. Returns the new list.
  20223. Fadd-menu-button
  20224. Add a menu item to some menu, creating the menu first if necessary.
  20225. If the named item exists already, it is changed.
  20226. MENU-PATH identifies the menu under which the new menu item should be inserted.
  20227.  It is a list of strings; for example, ("File") names the top-level "File"
  20228.  menu.  ("File" "Foo") names a hypothetical submenu of "File".
  20229. MENU-LEAF is a menubar leaf node.  See the documentation of `current-menubar'.
  20230. BEFORE, if provided, is the name of a menu item before which this item should
  20231.  be added, if this item is not on the menu already.  If the item is already
  20232.  present, it will not be moved.
  20233. Fadd-submenu
  20234. Add a menu to the menubar or one of its submenus.
  20235. If the named menu exists already, it is changed.
  20236. MENU-PATH identifies the menu under which the new menu should be inserted.
  20237.  It is a list of strings; for example, ("File") names the top-level "File"
  20238.  menu.  ("File" "Foo") names a hypothetical submenu of "File".
  20239.  If MENU-PATH is nil, then the menu will be added to the menubar itself.
  20240. SUBMENU is the new menu to add.
  20241.  See the documentation of `current-menubar' for the syntax.
  20242. BEFORE, if provided, is the name of a menu before which this menu should
  20243.  be added, if this menu is not on its parent already.  If the menu is already
  20244.  present, it will not be moved.
  20245. Fdelete-menu-item
  20246. Remove the named menu item from the menu hierarchy.
  20247. PATH is a list of strings which identify the position of the menu item in 
  20248. the menu hierarchy.  The documentation of `add-submenu' describes menu-paths.
  20249. Frelabel-menu-item
  20250. Change the string of the specified menu item.
  20251. PATH is a list of strings which identify the position of the menu item in 
  20252. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20253. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20254. menu item called "Item" under the "Foo" submenu of "Menu".
  20255. NEW-NAME is the string that the menu item will be printed as from now on.
  20256. Fenable-menu-item
  20257. Make the named menu item be selectable.
  20258. PATH is a list of strings which identify the position of the menu item in 
  20259. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20260. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20261. menu item called "Item" under the "Foo" submenu of "Menu".
  20262. Fdisable-menu-item
  20263. Make the named menu item be unselectable.
  20264. PATH is a list of strings which identify the position of the menu item in 
  20265. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20266. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20267. menu item called "Item" under the "Foo" submenu of "Menu".
  20268. Fselect-toggle-menu-item
  20269. Make the named toggle- or radio-style menu item be in the `selected' state.
  20270. PATH is a list of strings which identify the position of the menu item in 
  20271. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20272. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20273. menu item called "Item" under the "Foo" submenu of "Menu".
  20274. Fdeselect-toggle-menu-item
  20275. Make the named toggle- or radio-style menu item be in the `unselected' state.
  20276. PATH is a list of strings which identify the position of the menu item in 
  20277. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20278. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20279. menu item called "Item" under the "Foo" submenu of "Menu".
  20280. Fyes-or-no-p-dialog-box
  20281. Ask user a "y or n" question with a popup dialog box.
  20282. Returns t if answer is "yes".
  20283. Takes one argument, which is the string to display to ask the question.
  20284. Fyes-or-no-p-maybe-dialog-box
  20285. Ask user a yes-or-no question.  Return t if answer is yes.
  20286. The question is asked with a dialog box or the minibuffer, as appropriate.
  20287. Takes one argument, which is the string to display to ask the question.
  20288. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
  20289. The user must confirm the answer with RET,
  20290. and can edit it until it as been confirmed.
  20291. Fy-or-n-p-maybe-dialog-box
  20292. Ask user a "y or n" question.  Return t if answer is "y".
  20293. Takes one argument, which is the string to display to ask the question.
  20294. The question is asked with a dialog box or the minibuffer, as appropriate.
  20295. It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
  20296. No confirmation of the answer is requested; a single character is enough.
  20297. Also accepts Space to mean yes, or Delete to mean no.
  20298. Fx-make-font-bold
  20299. Given an X font specification, this attempts to make a `bold' font.
  20300. If it fails, it returns nil.
  20301. Fx-make-font-unbold
  20302. Given an X font specification, this attempts to make a non-bold font.
  20303. If it fails, it returns nil.
  20304. Fx-make-font-italic
  20305. Given an X font specification, this attempts to make an `italic' font.
  20306. If it fails, it returns nil.
  20307. Fx-make-font-unitalic
  20308. Given an X font specification, this attempts to make a non-italic font.
  20309. If it fails, it returns nil.
  20310. Fx-make-font-bold-italic
  20311. Given an X font specification, this attempts to make a `bold-italic' font.
  20312. If it fails, it returns nil.
  20313. Fx-font-size
  20314. Return the nominal size of the given font.
  20315. This is done by parsing its name, so it's likely to lose.
  20316. X fonts can be specified (by the user) in either pixels or 10ths of points,
  20317.  and this returns the first one it finds, so you have to decide which units
  20318.  the returned value is measured in yourself...
  20319. Fx-find-smaller-font
  20320. Loads a new, slightly smaller version of the given font (or font name).
  20321. Returns the font if it succeeds, nil otherwise.
  20322. If scalable fonts are available, this returns a font which is 1 point smaller.
  20323. Otherwise, it returns the next smaller version of this font that is defined.
  20324. Fx-find-larger-font
  20325. Loads a new, slightly larger version of the given font (or font name).
  20326. Returns the font if it succeeds, nil otherwise.
  20327. If scalable fonts are available, this returns a font which is 1 point larger.
  20328. Otherwise, it returns the next larger version of this font that is defined.
  20329. Fx-init-other-random-faces
  20330. Initializes the colors and fonts of the bold, italic, bold-italic,
  20331. zmacs-region, highlight, primary-selection, secondary-selection, and
  20332. isearch faces when each device is created.  If you want to add code to
  20333. do stuff like this, use the create-device-hook.
  20334. Viso8859/1-code-to-x-keysym-table
  20335. Maps iso8859/1 to an X keysym name which corresponds to it.
  20336. There may be more than one X name for this keycode; this returns the first one.
  20337. Note that this is X specific; one should avoid using this table whenever 
  20338. possible, in the interest of portability.
  20339. Vinhibit-help-echo
  20340. Inhibits display of `help-echo' extent properties in the minibuffer.
  20341. Fx-mouse-kill
  20342. Kill the text between the point and mouse and copy it to the clipboard and
  20343. to the cut buffer
  20344. Fx-yank-function
  20345. Insert the current X selection or, if there is none, insert the X cutbuffer.
  20346. A mark is pushed, so that the inserted text lies between point and mark.
  20347. Fx-insert-selection
  20348. Insert the current selection into buffer at point.
  20349. Fx-set-point-and-insert-selection
  20350. Set point where clicked and insert the primary selection or the cut buffer.
  20351. Fx-set-point-and-move-selection
  20352. Set point where clicked and move the selected text to that location.
  20353. Fmouse-track-and-copy-to-cutbuffer
  20354. Make a selection like `mouse-track', but also copy it to the cutbuffer.
  20355. Vx-pointer-shape
  20356. *The shape of the mouse-pointer when over text.
  20357.  
  20358. This string may be any of the standard cursor names from appendix B 
  20359. of the Xlib manual (also known as the file <X11/cursorfont.h>) minus 
  20360. the XC_ prefix, or it may be a font name and glyph index of the form 
  20361. "FONT fontname index [[font] index]", or it may be the name of a
  20362. bitmap file acceptable to XmuLocateBitmapFile().  If it is a bitmap
  20363. file, and if a bitmap file whose name is the name of the cursor with
  20364. "msk" exists, then it is used as the mask.  For example, a pair of
  20365. files may be named "cursor.xbm" and "cursor.xbmmsk".
  20366. Vx-nontext-pointer-shape
  20367. *The shape of the mouse-pointer when over a buffer, but not over text.  
  20368. If this is nil, then `x-pointer-shape' is used.
  20369. Vx-mode-pointer-shape
  20370. *The shape of the mouse-pointer when over the modeline.
  20371. If this is nil, then either `x-nontext-pointer-shape' or `x-pointer-shape'
  20372. will be used.
  20373. Vx-selection-pointer-shape
  20374. *The shape of the mouse-pointer when over a selectable text region.
  20375. Vx-busy-pointer-shape
  20376. *The shape of the mouse-pointer when Emacs is busy.
  20377. Vx-toolbar-pointer-shape
  20378. *The shape of the mouse-pointer when over a toolbar.
  20379. Vx-pointer-foreground-color
  20380. *The foreground color of the mouse pointer.
  20381. Vx-pointer-background-color
  20382. *The background color of the mouse pointer.
  20383. Fx-track-pointer
  20384. For use as the value of `mouse-motion-handler'.
  20385. This implements `x-pointer-shape' and related variables,
  20386. as well as extent highlighting, and `mode-motion-hook'.
  20387. Fx-init-pointer-shape
  20388. Initializes the mouse-pointers of the given device from the resource
  20389. database.
  20390. Vmouse-track-rectangle-p
  20391. *If true, then dragging out a region with the mouse selects rectangles
  20392. instead of simple start/end regions.
  20393. Vmouse-yank-at-point
  20394. *If non-nil, the function `mouse-yank' will yank text at the cursor location.
  20395. Otherwise, the cursor will be moved to the location of the pointer click before
  20396. text is inserted.
  20397. Vmouse-yank-function
  20398. Function that is called upon by `mouse-yank' to actually insert text.
  20399. Fmouse-select
  20400. Select Emacs window the mouse is on.
  20401. Fmouse-delete-window
  20402. Delete the Emacs window the mouse is on.
  20403. Fmouse-keep-one-window
  20404. Select Emacs window mouse is on, then kill all other Emacs windows.
  20405. Fmouse-select-and-split
  20406. Select Emacs window mouse is on, then split it vertically in half.
  20407. Fmouse-set-point
  20408. Select Emacs window mouse is on, and move point to mouse position.
  20409. Fmouse-yank
  20410. Paste text with the mouse.
  20411. If the variable `mouse-yank-at-point' is nil, then pasting occurs at the
  20412. location of the click; otherwise, pasting occurs at the current cursor location.
  20413. Fclick-inside-extent-p
  20414. Returns non-nil if the button event is within the bounds of the primary
  20415. selection-extent, nil otherwise.
  20416. Fpoint-inside-extent-p
  20417. Returns non-nil if the point is within or just after the bounds of the
  20418. primary selection-extent, nil otherwise.
  20419. Fmouse-eval-sexp
  20420. Evaluate the sexp under the mouse.  Usually, this is the last sexp before
  20421. the click, but if you click on a left paren, then it is the sexp beginning
  20422. with the paren that is evaluated.  Also, since strings evaluate to themselves,
  20423. they're fed to re-search-forward and the matched region is highlighted until
  20424. the mouse button is released.
  20425.  
  20426. Perhaps the most useful thing about this function is that the evaluation of
  20427. the expression which is clicked upon is relative not to the window where you
  20428. click, but to the current window and the current position of point.  Thus,
  20429. you can use `mouse-eval-sexp' to interactively test code that acts upon a
  20430. buffer...something you cannot do with the standard `eval-last-sexp' function.
  20431. It's also fantastic for debugging regular expressions.
  20432. Fmouse-line-length
  20433. Print the length of the line indicated by the pointer.
  20434. Fmouse-set-mark
  20435. Select Emacs window mouse is on, and set mark at mouse position.
  20436. Display cursor at that position for a second.
  20437. Fmouse-scroll
  20438. Scroll point to the mouse position.
  20439. Fmouse-del-char
  20440. Delete the char pointed to by the mouse.
  20441. Fmouse-kill-line
  20442. Kill the line pointed to by the mouse.
  20443. Fnarrow-window-to-region
  20444. Narrow window to region between point and last mark
  20445. Fmouse-window-to-region
  20446. Narrow window to region between cursor and mouse pointer.
  20447. Fmouse-ignore
  20448. Don't do anything.
  20449. Vmouse-track-down-hook
  20450. Function or functions called when the user presses the mouse.
  20451. This hook is invoked by `mouse-track'; thus, it will not be called
  20452. for any buttons with a different binding.  The functions will be
  20453. called with two arguments: the button-press event and a click
  20454. count (see `mouse-track-click-hook').
  20455.  
  20456. If any function returns non-nil, the remaining functions will not be
  20457. called.
  20458.  
  20459. Note that most applications should take action when the mouse is
  20460. released, not when it is pressed.'
  20461. Vmouse-track-drag-hook
  20462. Function or functions called when the user drags the mouse.
  20463. This hook is invoked by `mouse-track'; thus, it will not be called
  20464. for any buttons with a different binding.  The functions will be
  20465. called with three arguments: the mouse-motion event, a click
  20466. count (see `mouse-track-click-hook'), and whether the call to
  20467. this hook occurred as a result of a drag timeout (see
  20468. `mouse-track-scroll-delay').
  20469.  
  20470. If any function returns non-nil, the remaining functions will not be
  20471. called.
  20472.  
  20473. Note that no calls to this function will be made until the user
  20474. initiates a drag (i.e. moves the mouse more than a certain
  20475. threshold in either the X or the Y direction, as defined by
  20476. `mouse-track-x-threshold' and `mouse-track-y-threshold').
  20477.  
  20478. See also `mouse-track-drag-up-hook'.
  20479. Vmouse-track-drag-up-hook
  20480. Function or functions called when the user finishes a drag.
  20481. This hook is invoked by `mouse-track'; thus, it will not be called
  20482. for any buttons with a different binding.  The functions will be
  20483. called with two arguments: the button-press event and a click
  20484. count (see `mouse-track-click-hook').
  20485.  
  20486. If any function returns non-nil, the remaining functions will not be
  20487. called.
  20488.  
  20489. Note that this hook will not be invoked unless the user has
  20490. initiated a drag, i.e. moved the mouse more than a certain threshold
  20491. (see `mouse-track-drag-hook').  When this function is invoked,
  20492. `mouse-track-drag-hook' will have been invoked at least once.
  20493.  
  20494. See also `mouse-track-click-hook'.
  20495. Vmouse-track-click-hook
  20496. Function or functions called when the user clicks the mouse.
  20497. `Clicking' means pressing and releasing the mouse without having
  20498. initiated a drag (i.e. without having moved more than a certain
  20499. threshold -- see `mouse-track-drag-hook').
  20500.  
  20501. This hook is invoked by `mouse-track'; thus, it will not be called
  20502. for any buttons with a different binding.  The functions will be
  20503. called with two arguments: the button-release event and a click
  20504. count, which specifies the number of times that the mouse has been
  20505. clicked in a series of clicks, each of which is separated by at most
  20506. `mouse-track-multi-click-time'.  This can be used to implement actions
  20507. that are called on double clicks, triple clicks, etc.
  20508.  
  20509. If any function returns non-nil, the remaining functions will not be
  20510. called.
  20511.  
  20512. See also `mouse-track-drag-up-hook.
  20513. Vmouse-track-up-hook
  20514. Function or functions called when the user releases the mouse.
  20515. This hook is invoked by `mouse-track'; thus, it will not be called
  20516. for any buttons with a different binding.  The functions will be
  20517. called with two arguments: the button-release event and a click
  20518. count (see `mouse-track-click-hook').
  20519.  
  20520. For many applications, it is more appropriate to use one or both
  20521. of `mouse-track-click-hook' and `mouse-track-drag-up-hook'.
  20522. Vmouse-track-cleanup-hook
  20523. Function or functions called when `mouse-track' terminates.
  20524. This hook will be called in all circumstances, even upon a
  20525. non-local exit out of `mouse-track', and so is useful for
  20526. doing cleanup work such as removing extents that may have
  20527. been created during the operation of `mouse-track'.
  20528.  
  20529. Unlike all of the other mouse-track hooks, this is a "normal"
  20530. hook: the hook functions are called with no arguments, and
  20531. all hook functions are called regardless of their return
  20532. values.
  20533. Vmouse-track-multi-click-time
  20534. Maximum number of milliseconds allowed between clicks for a multi-click.
  20535. See `mouse-track-click-hook'.
  20536. Vmouse-track-scroll-delay
  20537. Maximum of milliseconds between calls to `mouse-track-drag-hook'.
  20538. If the user is dragging the mouse (i.e. the button is held down and
  20539. a drag has been initiated) and does not move the mouse for this many
  20540. milliseconds, the hook will be called with t as the value of the
  20541. WAS-TIMEOUT parameter.  This can be used to implement scrolling
  20542. in a selection when the user drags the mouse out the window it
  20543. was in.
  20544.  
  20545. A value of nil disables the timeout feature.
  20546. Vmouse-track-x-threshold
  20547. Minimum number of pixels in the X direction for a drag to be initiated.
  20548. If the mouse is moved more than either the X or Y threshold while the
  20549. button is held down (see also `mouse-track-y-threshold'), then a drag
  20550. is initiated; otherwise the gesture is considered to be a click.
  20551. See `mouse-track'.
  20552.  
  20553. The value should be either a number of a form to be evaluated to
  20554. produce a number.
  20555. Vmouse-track-y-threshold
  20556. Minimum number of pixels in the Y direction for a drag to be initiated.
  20557. If the mouse is moved more than either the X or Y threshold while the
  20558. button is held down (see also `mouse-track-x-threshold'), then a drag
  20559. is initiated; otherwise the gesture is considered to be a click.
  20560. See `mouse-track'.
  20561.  
  20562. The value should be either a number of a form to be evaluated to
  20563. produce a number.
  20564. Fmouse-track
  20565. Make a selection with the mouse.  This should be bound to a mouse button.
  20566. The behavior of XEmacs during mouse selection is customizable using various
  20567. hooks and variables: see `mouse-track-click-hook', `mouse-track-drag-hook',
  20568. `mouse-track-drag-up-hook', `mouse-track-down-hook', `mouse-track-up-hook',
  20569. `mouse-track-cleanup-hook', `mouse-track-multi-click-time',
  20570. `mouse-track-scroll-delay', `mouse-track-x-threshold', and
  20571. `mouse-track-y-threshold'.
  20572.  
  20573. Default handlers are provided to implement standard selecting/positioning
  20574. behavior.  You can explicitly request this default behavior, and override
  20575. any custom-supplied handlers, by using the function `mouse-track-default'
  20576. instead of `mouse-track'.
  20577.  
  20578. Default behavior is as follows: 
  20579.  
  20580. If you click-and-drag, the selection will be set to the region between the
  20581. point of the initial click and the point at which you release the button.
  20582. These positions need not be ordered.
  20583.  
  20584. If you click-and-release without moving the mouse, then the point is moved
  20585. and the selection is disowned (there will be no selection owner).  The mark
  20586. will be set to the previous position of point.
  20587.  
  20588. If you double-click, the selection will extend by symbols instead of by
  20589. characters.  If you triple-click, the selection will extend by lines.
  20590.  
  20591. If you drag the mouse off the top or bottom of the window, you can select
  20592. pieces of text which are larger than the visible part of the buffer; the
  20593. buffer will scroll as necessary.
  20594.  
  20595. The selected text becomes the current X Selection, and is also copied to the
  20596. top of the kill ring.  The point will be left at the position at which you
  20597. released the button, and the mark will be left at the initial click position.
  20598. Fmouse-track-default
  20599. Invoke `mouse-track' with only the default handlers active.
  20600. Fmouse-track-do-rectangle
  20601. Like `mouse-track' but selects rectangles instead of regions.
  20602. Fmouse-track-adjust
  20603. Extend the existing selection.  This should be bound to a mouse button.
  20604. The selection will be enlarged or shrunk so that the point of the mouse
  20605. click is one of its endpoints.  This function in fact behaves fairly
  20606. similarly to `mouse-track', but begins by extending the existing selection
  20607. (or creating a new selection from the previous text cursor position to
  20608. the current mouse position) instead of creating a new, empty selection.
  20609.  
  20610. The mouse-track handlers are run from this command just like from
  20611. `mouse-track'.  Therefore, do not call this command from a mouse-track
  20612. handler!
  20613. Fmouse-track-adjust-default
  20614. Extend the existing selection, using only the default handlers.
  20615. This is just like `mouse-track-adjust' but will override any
  20616. custom mouse-track handlers that the user may have installed.
  20617. Fmouse-track-insert
  20618. Make a selection with the mouse and insert it at point.
  20619. This is exactly the same as the `mouse-track' command on \[mouse-track],
  20620. except that point is not moved; the selected text is immediately inserted
  20621. after being selected; and the selection is immediately disowned afterwards.
  20622. Fmouse-track-delete-and-insert
  20623. Make a selection with the mouse and insert it at point.
  20624. This is exactly the same as the `mouse-track' command on \[mouse-track],
  20625. except that point is not moved; the selected text is immediately inserted
  20626. after being selected; and the text of the selection is deleted.
  20627. Vdrag-modeline-event-lag
  20628. *The amount of time to wait (in msecs) between drag modeline events
  20629. before updating the display. If this value is too small, dragging will
  20630. be choppy because redisplay cannot keep up. If it is too large, dragging
  20631. will be choppy because of the explicit redisplay delay specified.
  20632. Vmodeline-click-swaps-buffers
  20633. *If non-nil, clicking on the modeline changes the current buffer.
  20634. Click on the left half of the modeline cycles forward through the
  20635. buffer list and clicking on the right half cycles backward.
  20636. Fmouse-drag-modeline
  20637. Resize the window by dragging the modeline.
  20638. This should be bound to a mouse button in `modeline-map'.
  20639. Fmouse-release-modeline
  20640. Handle modeline click EVENT on LINE-NUM by switching buffers.
  20641. If click on left half of a frame's modeline, bury current buffer.
  20642. If click on right half of a frame's modeline, raise bottommost buffer.
  20643. Args are: EVENT, the mouse release event, and LINE-NUM, the line number
  20644. within the frame at which the mouse was first depressed.
  20645. Fpress-toolbar-button
  20646. Press a toolbar button.  This only changes its appearance.
  20647. Frelease-and-activate-toolbar-button
  20648. Release a toolbar button and activate its callback.
  20649. Frelease-toolbar-button
  20650. Release all pressed toolbar buttons.
  20651. Vmode-motion-hook
  20652. Function or functions which are called whenever the mouse moves.
  20653. You should normally use this rather than `mouse-motion-handler', which 
  20654. does some additional window-system-dependent things.  This hook is local
  20655. to every buffer, and should normally be set up by major-modes which want
  20656. to use special highlighting.  Every time the mouse moves over a window,
  20657. the mode-motion-hook of the buffer of that window is run.
  20658. Vmode-motion-help-echo-string
  20659. String to be added as the 'help-echo property of the mode-motion extent.
  20660. In order for this to work, you need to add the hook function
  20661. `mode-motion-add-help-echo' to the mode-motion hook.  If this is a function,
  20662. it will be called with one argument (the event) and should return a string
  20663. to be added.  This variable is local to every buffer.
  20664. Fmode-motion-highlight-line
  20665. For use as the value of `mode-motion-hook' -- highlight line under mouse.
  20666. Fmode-motion-highlight-word
  20667. For use as the value of `mode-motion-hook' -- highlight word under mouse.
  20668. Fmode-motion-highlight-symbol
  20669. For use as the value of `mode-motion-hook' -- highlight symbol under mouse.
  20670. Fmode-motion-highlight-sexp
  20671. For use as the value of `mode-motion-hook' -- highlight form under mouse.
  20672. Fmode-motion-add-help-echo
  20673. For use as the value of `mode-motion-hook' -- add a 'help-echo property.
  20674. This causes the string in the 'help-echo property to be displayed when the
  20675. mouse moves over the extent.  See `mode-motion-help-echo-string' for
  20676. documentation on how to control the string that is added.
  20677. Fminibuf-select-highlighted-completion
  20678. Select the highlighted text under the mouse as a minibuffer response.
  20679. When the minibuffer is being used to prompt the user for a completion,
  20680. any valid completions which are visible on the frame will highlight
  20681. when the mouse moves over them.  Clicking \<minibuffer-local-map>\[minibuf-select-highlighted-completion] will select the
  20682. highlighted completion under the mouse.
  20683.  
  20684. If the mouse is clicked while while not over a highlighted completion,
  20685. then the global binding of \[minibuf-select-highlighted-completion] will be executed instead.  In this
  20686. way you can get at the normal global behavior of \[minibuf-select-highlighted-completion] as well as
  20687. the special minibuffer behavior.
  20688. Fminibuf-maybe-select-highlighted-completion
  20689. Like minibuf-select-highlighted-completion but does nothing if there is
  20690. no completion (as opposed to executing the global binding).  Useful as the
  20691. value of `mouse-track-click-hook'.
  20692. Fx-get-selection
  20693. Return text selected from some X window.
  20694. Fx-get-secondary-selection
  20695. Return text selected from some X window.
  20696. Fx-get-clipboard
  20697. Return text pasted to the clipboard.
  20698. Vprimary-selection-extent
  20699. The extent of the primary selection; don't use this.
  20700. Vsecondary-selection-extent
  20701. The extent of the secondary selection; don't use this.
  20702. Fx-own-selection
  20703. Make a primary X Selection of the given argument.  
  20704. The argument may be a string, a cons of two markers, or an extent.  
  20705. In the latter cases the selection is considered to be the text 
  20706. between the markers, or between the extent's endpoints.
  20707. Fx-own-secondary-selection
  20708. Make a secondary X Selection of the given argument.  The argument may be a 
  20709. string or a cons of two markers (in which case the selection is considered to
  20710. be the text between those markers).
  20711. Fx-own-clipboard
  20712. Paste the given string to the X Clipboard.
  20713. Fx-disown-selection
  20714. Assuming we own the selection, disown it.  With an argument, discard the
  20715. secondary selection instead of the primary selection.
  20716. Fx-dehilight-selection
  20717. for use as a value of `x-lost-selection-hooks'.
  20718. Fx-notice-selection-requests
  20719. for possible use as the value of x-sent-selection-hooks.
  20720. Fx-notice-selection-failures
  20721. for possible use as the value of x-sent-selection-hooks.
  20722. Fx-get-cutbuffer
  20723. Returns the value of one of the 8 X server cut buffers.  Optional arg
  20724. WHICH-ONE should be a number from 0 to 7, defaulting to 0.
  20725. Cut buffers are considered obsolete; you should use selections instead.
  20726. This function does nothing if support for cut buffers was not compiled
  20727. into Emacs.
  20728. Fx-store-cutbuffer
  20729. Store the given string into the X server's primary cut buffer.
  20730. The previous value of the primary cut buffer is rotated to the secondary
  20731. cut buffer, and the second to the third, and so on (there are 8 buffers).
  20732. Cut buffers are considered obsolete; you should use selections instead.
  20733. This function does nothing if support for cut buffers was not compiled
  20734. into Emacs.
  20735. Fx-supports-cutbuffers-p
  20736. Returns whether support for cut buffers was compiled into Emacs.
  20737. Cut buffers are considered obsolete; you should use selections instead.
  20738. Fx-copy-primary-selection
  20739. Copy the selection to the Clipboard and the kill ring.
  20740. Fx-kill-primary-selection
  20741. Copy the selection to the Clipboard and the kill ring, then delete it.
  20742. Fx-delete-primary-selection
  20743. Delete the selection without copying it to the Clipboard or the kill ring.
  20744. Fx-yank-clipboard-selection
  20745. Insert the current Clipboard selection at point.
  20746. Fx-bogosity-check-resource
  20747. Check for a bogus resource specification.
  20748. Fx-init-specifier-from-resources
  20749. Initialize a specifier from the resource database.
  20750. LOCALE specifies the locale that is to be initialized and should be
  20751. a frame, a device, or 'global.  TYPE is the type of the resource and
  20752. should be one of 'string, 'boolean, 'integer, or 'natnum.  The
  20753. remaining args should be conses of names and classes of resources
  20754. to be examined.  The first resource with a value specified becomes
  20755. the spec for SPECIFIER in LOCALE. (However, if SPECIFIER already
  20756. has a spec in LOCALE, nothing is done.) Finally, if LOCALE is 'global,
  20757. a check is done for bogus resource specifications.